,它实现的原理很简单:先定义一个包含原始数组第一个元素的数组,然后遍历原始数组,将原始数组中的每个元素与新数组中的每个元素进行比对,如果不重复则添加到新数组中,最后返回新数组;因为它的时间复杂度是O(n...为了测试这些解法的性能,我写了一个测试模版,用来计算数组去重的耗时。...indexOf 与 Set 的一点说明:
上面代码中console.log(NaN === NaN); // false, indexOf 底层使用的是 === 进行判断,所以使用 indexOf 查找不到..., String, String, /a/, /a/, NaN, NaN] 对象和 NaN 不去重
Array.sort()加一行遍历冒泡 [/a/, /a/, "1", 1, String, 1, String...总结
面试时回答面试官的问题,除了你能把代码编出来运行出正确的结果,正确还包含对问题的独到见解,还需要考虑下面的问题:
优化
代码规范
容错性其实如果是非常难的问题,对你的竞争对手来说,也是难的,关键在于你所表达出的解决问题的思路