老师请帮我解释一下为什么会有这样的输出结果

来源:2-3 Set实例的方法和属性

只是向上走

2021-07-21 12:43:56

 // 1.1  add方法 用于添加成员
let s=new Set();
s.add(1);
s.add(3).add(9);
console.log(s);

// 1.2 delete方法 用于删除单个成员 删除不存在的成员时,既不会报错也不会提示
s.delete(9);
console.log(s);

// 1.3 clear方法 用于删除全部成员
s.clear();
console.log(s);

使用clear方法删除全部成员 ,但前面的输出结果也跟着为空了http://img.mukewang.com/climg/60f7a5e409f40b8a05210200.jpg

但是刷新之后前面的输出结果又不为空了http://img.mukewang.com/climg/60f7a60b09f2cca204050229.jpg

写回答

1回答

好帮手慕然然

2021-07-21

同学你好,JavaScript代码一般情况下是按照从上往下的顺序执行,所以浏览器刷新后控制台打印的结果,是代码按照顺序执行得到的结果。但是第一次打开页面时,控制台打印的是最终结果,因为set对象的clear()方法执行后会改变原对象,所以打印的结果都是空。建议同学不需要纠结这个问题,学会使用这些方法就可以了。

祝学习愉快!

0

前端工程师

前端入门如同写字,如果你不知道从哪开始,那就选择前端(含Vue3.x,React17,TS)

20327 学习 · 17877 问题

查看课程