在看設計模式這本書,遇到乙個令人疑惑的for迴圈語句
for (var i = 0, type;type = ['string', 'array', 'number'][i++])
比較疑惑,因為從平時接觸的來看基本上都是
for(語句1,語句2,語句3)
語句1:起始
語句2:迴圈終止條件
語句3:在迴圈後被執行的語句
現在的疑惑如下
for(var i =10,i--;)
實際上上面的語句等同於
for(var i =0, i<10 i++;)
這裡等同於把迴圈終止條件和迴圈被執行後執行的語句相結合了即把判斷和賦值放到一起了,一邊迴圈一邊賦值,i--是什麼判斷條件,當i--為fasle即,迴圈終止,在js中0, null, undefined, false, 『』,根據boolean的**轉化,其結果為false,即i=0時條件終止
再回到我們之前的問題
for (var i = 0, type;type = ['string', 'array', 'number'][i++])
var i =0,type;語句1
type = ['string', 'array', 'number'][i++] 語句2
即這裡的判斷+賦值調件為type = [『string』, 『array』, 『number』][i++],終止條件為type=『undefined』 for迴圈寫法高階
1 常用寫法 for var i 0 i console.log i console.log arr i 每次都需要讀取一次arr.length,進行判斷 2 for var i 0,len arr.length i console.log i console.log arr i 變數定義完整,不用...
for迴圈寫法總結
for迴圈寫法總結 關於shell中的for迴圈用法很多,感覺很全面,所以就轉過來研究研究,嘿嘿.1 for i 1 i 10 i root fox for i 1 i 3 i do echo i 4 done48 2 在shell中常用的是 for i in seq 10 root fox for...
bash 迴圈寫法
for 依次訪問列表裡的元素。由空格或回車分隔的串就是列表。for var in 列表 do done 列表的生成方式 for練習 1,分別求100以內所有偶數之和,所有奇數之和 bin bash declare i sum1 0 declare i sum2 0 for var in do if ...