发布于 2016-09-20 05:57:32 | 234 次阅读 | 评论: 1 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

腾讯

腾讯控股有限公司(腾迅)是一家民营IT企业,成立于1998年11月29日,总部位于中国广东深圳,是中国最大的互联网综合服务提供商之一,也是中国服务用户最多,最广的互联网企业之一。


请指出一下代码的性能问题,并经行优化。
 
var info="腾讯拍拍网(www.paipai.com)是腾讯旗下知名电子商务网站。"; 
info +="拍拍网于2005年9月12日上线发布,"; 
info +="2006年3月13日宣布正式运营,"; 
info +="是目前国内第二大电子商务平台。"; 
info=info.split(","); 
for(var i=0; i<info.length; i++) 
{ 
alert(info[i]); 
} 

这题初看纯属折腾,因为后面要根据逗号分隔再alert每项,何不构造一个数组对象来存放文本内容,而要用个临时变量info才存放
如var info=["腾讯拍拍网(www.paipai.com)是腾讯旗下知名电子商务网站。","拍拍网于2005年9月12日上线发布,","2006年3月13日宣布正式运营,","是目前国内第二大电子商务平台。"] 。可是后来想如果是优化的话这个题目就出的没意义了。
仔细观察info这个变量,发现它每次都要自加字符串,如果字符串很大的又很多的话会非常影响性能的。

对于js中的string类型,属于基本类型,因此一般情况下他们是存放在栈上的。如果字符串很大,info会每次变成一个很长的字符串,会很慢

如果用引用类型数组来存放则好很多,如
 
var temp=[]; 
temp.push("腾讯拍拍网(www.paipai.com)是腾讯旗下知名电子商务网站。") ; 
temp.push()....//temp只是一个指向堆上数组的指针 
.... 

最后一招temp.join("")搞定。对处理大字符串连接问题都可以采取这种思路。

最新网友评论  共有(1)条评论 发布评论 返回顶部
大疆 发布于2016-12-01 03:15:32
javascript与nginx
http://www.***.net/news/article118.html
支持(0)  反对(0)  回复

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务