Array from(new Set)去重原理Arrayfrom newSet 去重原理类数组转为数组 1 Arrayfrom2 Array prototype slice call arguments Array from 在转化对象时 要求过于苛刻 因此不适用于转化对象 主要场景如下 1 从类数组对象 arguments 生成数组 letfn function console log Array from arguments fn 1 2 3 1 2 3 2 从 String 生成数组
Array.from(new Set)去重原理
Array.from()在转化对象时,要求过于苛刻,因此不适用于转化对象,主要场景如下:
set() 函数中会先调用对象的 hash() 方法,获取 hash 结果;
如果 hash 结果相同,用比较操作符 == (也就是调用函数 eq())判断二者的值是否相等;
如果都相等,去重;否则,set() 认为二者不同,两个都保留到结果中。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/227695.html原文链接:https://javaforall.net