javascript - 删除属性或构造仅具有所需属性的新对象更快吗?

标签 javascript node.js performance properties

我有一个在 NodeJS 中执行了数百万次的循环,其中包括从某些对象中删除一些不需要的属性。

我很想知道一般来说,这样做是否更快:

undesiredPropsArray.forEach(p => delete(obj[p]))

var newObj = {};
Object.keys(obj).forEach(p => { if (!undesiredPropsObj[p]) newObj[p] = obj[p] });

简单地运行测试并不像听起来那么简单,因为所需和不需要的属性的数量会有所不同。

最佳答案

如果您暂时假设每个命令的执行时间相同,那么执行命令较少的任务执行速度会更快。换句话说,如果与您想要保留的属性数量相比,您不需要的属性较少,那么删除应该更快(反之亦然)。不过,除非我们谈论的是处理大量次的大型对象,否则节省的时间将是微不足道的。我想:)

关于javascript - 删除属性或构造仅具有所需属性的新对象更快吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47984998/

相关文章:

javascript - 确定3个坐标之间的 Angular

javascript - 正则表达式匹配字符串中的开始([)和结束(,)(仅)

javascript - Web MIDI 回调函数仅在登录到控制台时有效

JavaScript 加密库无法在简单的示例程序中加密和解密字符串

java - 逐行以相反顺序读取文件,无需太多开销

java - top -H 显示了几个没有出现在 jstack 输出中的线程 ID

javascript - Fusioncharts 2d 列在只有正值或负值时显示零平面

javascript - 为什么我突然收到 ELIFECYCLE errno 1?

javascript - Javascript 中变量不断变成对象而不是数组

javascript - 高效追加到现有 DOM 元素数组