关于Set结构,阅读下面的代码,回答问题。

2021-02-04 09:20发布

let s = new Set(); s.add([1]); s.add([1]); console.log(s.size);  问:打印出来的size的值是多少?为什么?

let s = new Set();

s.add([1]);

s.add([1]);

console.log(s.size);

  问:打印出来的size的值是多少?为什么?


2条回答
桃酥超好吃
2021-02-04 19:16

结果是为2

Set本身是一个构造函数,用来生成Set数据结构,它类似于数组,但是成员的值是唯一的,不重复的

向set中加入值时,不会发生类型转换。

但是需要注意的是,在Set中引用型(数组 对象)也是不同的,这是因为引用类型在进行比较时,比较的是其地址,所以对于引用类型的比较来说总是不等的。

故上面的代码,两次添加的数组在做比较时并不相等,会进行两次的添加,最后得到的size为2


一周热门 更多>