|
var info="騰訊拍拍網(wǎng)(www.paipai.com)是騰訊旗下知名電子商務(wù)網(wǎng)站。";
info +="拍拍網(wǎng)于2005年9月12日上線發(fā)布,";
info +="2006年3月13日宣布正式運(yùn)營,";
info +="是目前國內(nèi)第二大電子商務(wù)平臺。";
info=info.split(",");
for(var i=0; i<info.length; i++)
{
alert(info[i]);
}
這題初看純屬折騰,因?yàn)楹竺嬉鶕?jù)逗號分隔再alert每項(xiàng),何不構(gòu)造一個數(shù)組對象來存放文本內(nèi)容,而要用個臨時變量info才存放
如var info=["騰訊拍拍網(wǎng)(www.paipai.com)是騰訊旗下知名電子商務(wù)網(wǎng)站。","拍拍網(wǎng)于2005年9月12日上線發(fā)布,","2006年3月13日宣布正式運(yùn)營,","是目前國內(nèi)第二大電子商務(wù)平臺。"] 。可是后來想如果是優(yōu)化的話這個題目就出的沒意義了。
仔細(xì)觀察info這個變量,發(fā)現(xiàn)它每次都要自加字符串,如果字符串很大的又很多的話會非常影響性能的。
對于js中的string類型,屬于基本類型,因此一般情況下他們是存放在棧上的。如果字符串很大,info會每次變成一個很長的字符串,會很慢
如果用引用類型數(shù)組來存放則好很多,如
復(fù)制代碼 代碼如下:
var temp=[];
temp.push("騰訊拍拍網(wǎng)(www.paipai.com)是騰訊旗下知名電子商務(wù)網(wǎng)站。") ;
temp.push()....//temp只是一個指向堆上數(shù)組的指針
....
最后一招temp.join("")搞定。對處理大字符串連接問題都可以采取這種思路。
JavaScript技術(shù):來自qq的javascript面試題,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。