使用 V8 从密集数组中删除元素的最佳方法是什么
What is the best way to remove an element from a dense array with V8?
Google V8引擎对密集和稀疏数组有不同的内部表示。当数组从密集变为稀疏时,它会导致字典模式启动,这要慢得多。
我似乎无法弄清楚从密集数组中的某个位置删除元素以避免进入稀疏数组的最有效(最快(方法是什么。
用例非常简单。从数组[8, 6, 1]
开始,然后删除元素6
转到[8, 1]
。
如果只删除一个元素,如果元素位于数组的开头,则shift()
最快,当元素位于数组末尾时pop()
最快,如果元素位于中间的某个位置,则spliceOne
通常最快。
您正在寻找删除或替换数组部分的splice
方法。在您的情况下:
var arr = [8, 6, 1];
arr.splice(1, 1); // at pos 1 remove 1 element, yields [6]
arr; // [8, 1]
相关文章:
- 从数组中删除元素的最佳方法是:javascript/jquery
- 列出没有 mysql 的元素的最佳方法是什么
- 列出每行2个元素的最佳方式是按角度重复ng
- 让 jquery 为 ajax 添加的元素工作的最佳方法是什么?
- 在保持元素一致性的同时旋转数组元素的最佳方式'id
- 使用 V8 从密集数组中删除元素的最佳方法是什么
- 迭代JSON对象并将元素打印到屏幕上的最佳方式是什么
- 复制元素的最佳方式是:只复制元素的类型和属性
- 将元素保留在 DIV 中而不继承页面样式的最佳方法
- 使用 jQuery 创建嵌套 HTML 元素的最佳方式
- 创建画布元素的最佳做法
- 在 JavaScript 中创建元素的最佳方法
- 使用innerHTML想法添加大量html元素的最佳方法是什么
- 当文档中的单个元素准备就绪时触发事件的最佳方法
- 检查元素是否有类的最佳方法是什么
- 删除 js 数组中的 html 元素的最佳方法
- 使用 JavaScript 将 DOM 元素添加到 Body 的最佳方法
- 在 DOM 中测试元素的最佳方法是什么?
- jQuery中根据其数据属性包装元素的最佳方法是什么?
- 用于显示/隐藏叠加的简单触发器元素(最佳实践)