When I was reading the vue source code today, I encountered a writing method that I didn't understand.
view source

const deduped = [...new Set(pendingPostFlushCbs)]

在我看来,它是数组的浅显副本.但为什么我要先转换成SET,我能有更好的表现吗?我该怎么理解它呢?

推荐答案

对于Set,您可以删除重复项:

pendingPostFlushCbs = [1,2,5,5,6,8,8,]
const deduped = [...new Set(pendingPostFlushCbs)]
const deduped1 = [...pendingPostFlushCbs]
console.log(deduped)
console.log(deduped1)

Javascript相关问答推荐

我不知道为什么我的JavaScript没有验证我的表单

过滤对象数组并动态将属性放入新数组

使搜索栏更改语言

将旋转的矩形zoom 到覆盖它所需的最小尺寸&S容器

从包含数百行的表中获取更改后的值(以表单形式发送到后端)的正确方法是什么?

使用原型判断对象是否为类的实例

正则表达式,允许我匹配除已定义的子字符串之外的所有内容

对路由DOM嵌套路由作出react

扩展类型的联合被解析为基类型

Puppeteer上每页的useProxy返回的不是函数/构造函数

令牌JWT未过期

是否可以将Select()和Sample()与Mongoose结合使用?

删除元素属性或样式属性的首选方法

JavaScript将字符串数字转换为整数

在HTML5画布上下文中使用putImageData时,重载解析失败

JQuery使用选项填充HTMLSELECT并设置默认结果,默认结果显示为空

输入数据覆盖JSON文件

如何在不将整个文件加载到内存的情况下,在Node.js中实现Unix粘贴命令?

递归地将JSON对象的内容上移一级

响应,Use Callback更新状态变量,该变量也存在于其依赖数组中,它如何防止无限重新呈现?