下面的代碼與它等價(jià): 復(fù)制代碼 代碼如下: v " /> 免费观看三级毛片,麻豆导航,97国产伦子在线观看

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

JavaScript 數(shù)組循環(huán)引起的思考

看代碼,不說(shuō)話:
復(fù)制代碼 代碼如下:
var i=arr.length;
while(i--)
{
//寫(xiě)點(diǎn)啥?
}

上面是Google array.js 程序中建議改進(jìn)的代碼。思考為什么i-- 到了 i為0時(shí)while循環(huán)結(jié)束了?

下面的代碼與它等價(jià):
復(fù)制代碼 代碼如下:
var i=arr.length;
for(;i--;)
{
//i--寫(xiě)在兩個(gè)分號(hào)的中間,奇怪嗎?不奇怪嗎?
}

震撼?沒(méi)感覺(jué)?

呃。平時(shí)我們寫(xiě)在兩個(gè)分號(hào)中間的是什么?這個(gè)i--按“常理”應(yīng)該是在第二個(gè)分號(hào)之后啊。那我們看看C語(yǔ)言的代碼:
復(fù)制代碼 代碼如下:
int main()
{
int i = 5;
while(i--)
{
printf("%d ", i);
}
while(1);
return 0;
}

運(yùn)行的結(jié)果也是與JavaScript驚人的一致!

好吧。我不知道這是為什么?只知道數(shù)值0轉(zhuǎn)換成布爾值為false:

var i= !!0;

而別的數(shù)值轉(zhuǎn)換成布爾值為true。上面的示例程序代碼是將數(shù)值到布爾值的顯式轉(zhuǎn)換。

0隱式轉(zhuǎn)換為false的情況用下面的JS程序測(cè)一下:
復(fù)制代碼 代碼如下:
var i=0;
if(i)
{
alert('if');
}
else{
alert('else');
}
alert('不管怎么if和怎么else程序都要走這兒');

if這個(gè)示例代碼寫(xiě)得一點(diǎn)都不“實(shí)戰(zhàn)”?那好吧,下面是一位土豆網(wǎng)前端開(kāi)發(fā)高手的代碼示例片段:
復(fù)制代碼 代碼如下:
var obj = {status:0, msg:'xxxx'};
var data = obj.status || 'xxxx';

這個(gè)總夠“隱蔽”的了!

再?gòu)?qiáng)調(diào)一次:數(shù)值0的隱式轉(zhuǎn)換成布爾值為false的條件是在if()中、while()中、for(;;)兩個(gè)分號(hào)的中間等布爾判定的條件表達(dá)式。

JavaScript技術(shù)JavaScript 數(shù)組循環(huán)引起的思考,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 狠狠干五月天 | 精品国语对白精品自拍视 | 日本在线加勒比 | 日本a级精品一区二区三区 日本a在线看 | 久9精品视频 | 欧美五月婷婷 | 亚洲第一区二区快射影院 | 婷婷丁香激情五月 | 日本最新免费不卡二区在线 | 国产三级网站在线观看 | a级精品九九九大片免费看 a加勒比一本东京 | 国产91激情对白露脸全程 | 精彩国产熟睡乱子伦午夜片 | 国产成人精品视频2021 | 黄色美女免费看 | 欧美1314www伊人久久香网 | 精品视频免费观看 | 一级特黄色毛片免费看 | 经典毛片 | 中文字幕亚洲激情 | 久久九九有精品国产56 | 国产亚洲一欧美一区二区三区 | 国产乱码精品一区二区三上 | 日本高清一区 | 国产成人99精品免费观看 | 青草国产在线观看 | 久久伊人精品热在75 | 偷偷狠狠的日日2020 | 亚洲成在人天堂一区二区 | 婷婷色在线视频 | 香蕉久久久久久狠狠色 | 开心综合网 | 伊人网在线免费视频 | 亚洲图片视频在线 | 加勒比一区二区三区 | 欧美精品片在线观看网站 | 夜色55夜色66亚洲精品网站 | 亚洲综合影院 | 91大神麻豆| 日本精品一区二区三区在线视频一 | 91精品国产综合久久青草 |