來自qq的javascript面試題
更新時(shí)間:2010年07月24日 01:02:21 作者:
請指出一下代碼的性能問題,并經(jīng)行優(yōu)化。
復(fù)制代碼 代碼如下:
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)造一個(gè)數(shù)組對象來存放文本內(nèi)容,而要用個(gè)臨時(shí)變量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)化的話這個(gè)題目就出的沒意義了。
仔細(xì)觀察info這個(gè)變量,發(fā)現(xiàn)它每次都要自加字符串,如果字符串很大的又很多的話會非常影響性能的。
對于js中的string類型,屬于基本類型,因此一般情況下他們是存放在棧上的。如果字符串很大,info會每次變成一個(gè)很長的字符串,會很慢
如果用引用類型數(shù)組來存放則好很多,如
復(fù)制代碼 代碼如下:
var temp=[];
temp.push("騰訊拍拍網(wǎng)(www.paipai.com)是騰訊旗下知名電子商務(wù)網(wǎng)站。") ;
temp.push()....//temp只是一個(gè)指向堆上數(shù)組的指針
....
最后一招temp.join("")搞定。對處理大字符串連接問題都可以采取這種思路。
您可能感興趣的文章:
- 一套比較完整的javascript面試題(部分答案)
- BAT及各大互聯(lián)網(wǎng)公司2014前端筆試面試題--JavaScript篇
- 網(wǎng)易JS面試題與Javascript詞法作用域說明
- 你有必要知道的25個(gè)JavaScript面試題
- 用js實(shí)現(xiàn)上傳圖片前的預(yù)覽(TX的面試題)
- 5個(gè)JavaScript經(jīng)典面試題
- 從面試題學(xué)習(xí)Javascript 面向?qū)ο螅▌?chuàng)建對象)
- javascript實(shí)現(xiàn)上傳圖片前的預(yù)覽(TX的面試題)
- 人人網(wǎng)javascript面試題 可以提前實(shí)現(xiàn)下
- 14 個(gè)折磨人的 JavaScript 面試題
相關(guān)文章
javascript(js) join函數(shù)使用方法介紹
javascript(js) join函數(shù)使用方法介紹...2007-11-11詳解用js代碼觸發(fā)dom事件的實(shí)現(xiàn)方案
這篇文章主要介紹了詳解用js代碼觸發(fā)dom事件的實(shí)現(xiàn)方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06javascript完美實(shí)現(xiàn)給定日期返回上月日期的方法
這篇文章主要介紹了javascript完美實(shí)現(xiàn)給定日期返回上月日期的方法,結(jié)合實(shí)例形式分析了javascript日期時(shí)間的計(jì)算技巧,并給出了格式化日期時(shí)間的操作方法,需要的朋友可以參考下2017-06-06js實(shí)現(xiàn)兩個(gè)值相加alert出來精確到指定位
兩個(gè)值相加精確指定位數(shù)在alert出來,下面有個(gè)不錯的示例,感興趣的朋友可以參考下2013-09-09淺談js停止事件冒泡 阻止瀏覽器的默認(rèn)行為(阻止超連接 #)
下面小編就為大家?guī)硪黄獪\談js停止事件冒泡 阻止瀏覽器的默認(rèn)行為(阻止超連接 #)。2017-02-02js實(shí)現(xiàn)鼠標(biāo)劃過給div加透明度的方法
這篇文章主要介紹了js實(shí)現(xiàn)鼠標(biāo)劃過給div加透明度的方法,涉及javascript動態(tài)操作頁面元素屬性的相關(guān)技巧,該方法可兼容火狐與IE瀏覽器,需要的朋友可以參考下2015-05-05