百度笔试题:
题解:
ES6 提出“Same-value equality”(同值相等)算法
不同之处只有两个:一是+0不等于-0,二是NaN等于自身。
set使得NaN和NaN对比是相等的,解决了===在NaN上的bug
相关的其它知识点:
Set与List集合的区别:
Colllection是集合接口
---Set子接口:无序,不允许存在重复的元素 ---List子接口:有序,可以存在重复元素 区别,Collection是集合类
Set 和List的对比:
Set:检查元素效率低下,删除和插入的效率高,插入和删除不会引起元素的位置变化。
List:和数组类似,List可以动态增长,查找元素的效率较高,插入元素和删除元素效率低,因为会引起其他元素位置发生变化。
Set 和 List的具体子类:
Set
----HashSet:以哈希表的形式存放元素,插入删除速度很快
List:
----ArrayList :动态数组 ----LinkedList:链表,队列,堆栈