当前位置: 移动技术网 > IT编程>开发语言>JavaScript > js数组性能实例分析

js数组性能实例分析

2018年10月15日  | 移动技术网IT编程  | 我要评论

1.在数组添加的过程中尽量使得数组内容的类型保持一致

2.数组添加的时候:

相比两种concat方法的传参,当接受参数为数组时,执行效率要高于接受参数为非数组

索引器多数情况下执行效率要高于push方法

当执行次数越来越多时,索引器的执行效率开始不如push方法

3.字符串的情节,建议先形成数组,用数组的形式添加进去,然后用join分割形成字符串. 因为用+=拼接字符串是十分耗性能.如:

let str1 = "";
let len = 0;
while(len<10000){
str1 += len+"";
len++;
}
let arrstr = [];
let len = 0;
while(len<10000){
    arrstr[len] = len;
     len++;
}
let str2 = arrstr.join("");

像上面代码中 str1的形成速度就没有str2的要快速.

当字符串相对较小(小于20字符)且连接数量也较小时(小于1000个),所有的使用加法运算符都能在不到1毫秒内轻松完成连接。增加字符串数量或大小时,ie7中性能会明显下降。字符串大小增加时,firefox中加法运算符和数组成技巧性能差异会变小。字符串数量增加时,safari中加法运算符和数组成技巧性能差异会变小。改变字符串数量或大小时,chrome和opera中加法运算符一直保持领先优势。

所以,由于在各浏览器下性能不一致,选用技术取决于实际情况和面对的浏览器。

大多数情况下,加法运算符是首选;如果用户主要使用ie6或7,并且字符串大小较大或数量较多时,那么数组技术就很值得。

4.注意js的垃圾回收机制(不记得了去百度,这里推荐点击打开链接)

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网