【发布时间】:2019-06-05 18:40:04
【问题描述】:
这里的概念性问题,当使用 Javascript 按值从集合中删除项目时,实现此目的的性能更高的方法是什么?
假设:
function arrayRemove(arr, value) {
return arr.filter(function(ele){
return ele != value;
});
var array = ['a', 'b', 'c', 'd'];
只是使用
var result = arrayRemove(array, 'b');
比事先检查它的存在更合适
if (array.includes('b'))
var result = arrayRemove(array, 'b');
第一个更干净,操作更少,但后者并不总是触发过滤器。
【问题讨论】:
-
这两个选项都需要迭代整个数组,因此它并不是真正的“更少操作”;)
标签: javascript arrays performance