js迴圈遍歷條件歸類優化

2022-03-08 03:24:35 字數 703 閱讀 7281

現有大量log資料格式如上,其中url有http鏈結detail/ajax,list/ajax,字串"list","detail","beauty"這五種情況。

現在要再這萬條資料中把這五類分出來,常規寫法:

for (; i < len; i++) 

if(data[i]['url']==='list')

else

if(data[i]['url']==='detail')

else

if(data[i]['url']==='beauty')

else

if(data[i]['url'].indexof('list/ajax.do')+1)

else

if(data[i]['url'].indexof('detail/ajax.do')+1)

}

寫完之後發現11000條資料要花費1000ms的時間,感覺有點慢了。遂想到字串的indexof的效能非常好,於是改造一下迴圈:

var urlstr = 'listdetailbeauty';

for (; i < len; i++)

switch (urlstr.indexof(data[i]['url']))

}

構造乙個urlstr的字串,然後通過indexof進行分類,同樣的資料量執行居然只需要3ms,極大提公升了效率。

js迴圈遍歷

方式一 var arr 1,2,3,4,5 for let i 0 i方式一利用for迴圈來遍歷陣列的缺點就是 不夠簡潔。下面介紹乙個寫法更加簡潔的方式。方式二var arr 1,2,3,4,5 arr.foreach function value,index 利用foreach迴圈 量少了很多,寫...

條件判斷遍歷迴圈v model

v if v else 使用者輸入型別切換小案例中,如果有輸入內容,發現切換仍保留之前內容。因為vue在進行dom渲染時,出於效能考慮,會盡可能復用已經存在的元素,而不會建立新的元素。如果不希望進行復用,則給對應的元素加上key屬性,且key的值要不同。v show和v if的區別 當v if條件為...

js 迴圈 遍歷方法 跳出迴圈

for有三個表示式 宣告迴圈變數 判斷迴圈條件 更新迴圈變數 三個表示式之間,用 分割,for迴圈三個表示式都可以省略,但是兩個 缺一 不可。for迴圈的執行特點 先判斷再執行,與while相同 for迴圈三個表示式都可以有多部分組成,第二部分多個判斷條件用 連線,第一三部分用逗號分割 for va...