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的垃圾回收机制(不记得了去百度,这里推荐点击打开链接)
如对本文有疑问, 点击进行留言回复!!
【JavaScript笔记(一)】万丈高楼平地起 - 基本概念篇
轻松解决 org.apache.taglibs.standard.tlv.JstlCoreTLV 困惑
vert实践五——Json?Protocol Buffer?FlatBuffers?
[基于tensorflow的人脸检测] 基于神经网络的人脸检测8——验证训练好的神经网络
网友评论