几种向数组中添加元素方法的性能比较
2017-11-29 10:38
579 查看
引入:向一个数组中插入元素是平时很常见的一件事情。可以使用push在数组尾部插入元素,可以用unshift在数组头部插入元素,也可以用splice在数组中间插入元素。
虽然这些方法虽然常用,但并不意味着没有更加高效的方法……
移动端效率:
PC端效率:
因此可见,向数组结尾添加元素最快的方法是arr[arr.length]=xxx
移动端效率:
PC端效率:
因此可见,向数组结尾添加元素最快的方法是newArray.concat(array)
虽然这些方法虽然常用,但并不意味着没有更加高效的方法……
1.向数组结尾添加元素
最常用的当然是arry.push()方法,但是下面的方法效率更高:var arr = [1,2,3,4,5]; var arr2 = []; arr.push(6); //方法1 arr[arr.length] = 6; //方法2 arr2 = arr.concat([6]); //方法3
移动端效率:
最快的为 1. arr[arr.length] = 6; // 平均 5 632 856 ops/sec 2. arr.push(6); // 慢35.64% 3. arr2 = arr.concat([6]); // 慢62.67%
PC端效率:
最快的为 1. arr[arr.length] = 6; // 平均42 345 449 ops/sec 2. arr.push(6); // 慢34.66% 3. arr2 = arr.concat([6]); // 慢85.79%
因此可见,向数组结尾添加元素最快的方法是arr[arr.length]=xxx
2.向数组的头部添加元素
最常用的当然是arry.unshift()方法,但是下面的方法效率更高:var arr = [1,2,3,4,5]; arr.unshift(0); [0].concat(arr);
移动端效率:
最快的为 1. [0].concat(arr); // 平均4 972 622 ops/sec 2. arr.unshift(0); // 慢64.70%
PC端效率:
最快的为 最快的为 1. [0].concat(arr); // 平均6 032 573 ops/sec 2. arr.unshift(0); // 慢78.65%
因此可见,向数组结尾添加元素最快的方法是newArray.concat(array)
3.向数组中间添加元素
使用splice可以简单的向数组中间添加元素,这也是最高效的方法。var items = ['one', 'two', 'three', 'four']; items.splice(items.length / 2, 0, 'hello');
相关文章推荐
- js向一个数组中插入元素的几个方法-性能比较
- C#清除数组中数据的几种方法及性能比较
- c++中关于数组作为函数参数并传递数组元素个数的几种有效方法的讨论
- ArcEngine数据删除几种方法和性能比较
- 遍历Map和List的几种方法和性能比较
- 一起谈.NET技术,数组排序方法的性能比较(中):Array.Sort<T> 实现分析
- ArcEngine数据删除几种方法和性能比较
- 数组排序方法的性能比较(5):对象大小与排序性能
- 对python中两种列表元素去重函数性能的比较方法
- 数据列表过滤重复值几种方法的性能比较
- java 几种保留小数位数的方法性能比较
- splice() 方法通过删除现有元素和/或添加新元素来更改一个数组的内容。
- JavaScrip数组删除特定元素的几种方法总结
- javascript数组去重3种方法的性能测试与比较
- PHP数组中头部和尾部添加元素的方法(array_unshift,array_push)
- C语言数组清空的几种方法比较
- jQuery动态添加的元素绑定事件处理函数代码的方法及比较
- 关于遍历一个数组的几种方法比较
- python中List添加、删除元素的几种方法
- JavaScript 删除数组中一个元素--delete与赋值为undefined方法比较