欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2010年01月01日 00:07:12   作者:  
Google array.js 程序中建議改進的代碼。思考為什么i-- 到了 i為0時while循環(huán)結(jié)束了?
看代碼,不說話:
復制代碼 代碼如下:

var i=arr.length;
while(i--)
{
//寫點啥?
}

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

下面的代碼與它等價:
復制代碼 代碼如下:

var i=arr.length;
for(;i--;)
{
//i--寫在兩個分號的中間,奇怪嗎?不奇怪嗎?
}

震撼?沒感覺?

呃。平時我們寫在兩個分號中間的是什么?這個i--按“常理”應(yīng)該是在第二個分號之后啊。那我們看看C語言的代碼:
復制代碼 代碼如下:

int main()
{
int i = 5;
while(i--)
{
printf("%d ", i);
}
while(1);
return 0;
}

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

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

var i= !!0;

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

0隱式轉(zhuǎn)換為false的情況用下面的JS程序測一下:
復制代碼 代碼如下:

var i=0;
if(i)
{
alert('if');
}
else{
alert('else');
}
alert('不管怎么if和怎么else程序都要走這兒');

if這個示例代碼寫得一點都不“實戰(zhàn)”?那好吧,下面是一位土豆網(wǎng)前端開發(fā)高手的代碼示例片段:
復制代碼 代碼如下:

var obj = {status:0, msg:'xxxx'};
var data = obj.status || 'xxxx';

這個總夠“隱蔽”的了!

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

相關(guān)文章

  • 看看“疫苗查詢”小程序有溫度的代碼

    看看“疫苗查詢”小程序有溫度的代碼

    近日,一篇《疫苗之王》刷爆了朋友圈,疫苗的安全問題被推到了風口浪尖,騰訊安全反詐騙實驗室團隊推出了“騰訊安心計劃”小程序,方便用戶便捷地查詢疫苗安全信息
    2018-07-07
  • JavaScript逆向案例之如何破解登錄密碼

    JavaScript逆向案例之如何破解登錄密碼

    這篇文章主要介紹了JavaScript逆向案例之如何破解登錄密碼,文章通過12306的登陸方法展開用戶登錄密碼的參數(shù)破解辦法,感興趣的小伙伴可以參考一下
    2022-06-06
  • 微信小程序?qū)崿F(xiàn)簡單九宮格抽獎

    微信小程序?qū)崿F(xiàn)簡單九宮格抽獎

    這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)簡單九宮格抽獎,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • JavaScript模板引擎實現(xiàn)原理實例詳解

    JavaScript模板引擎實現(xiàn)原理實例詳解

    這篇文章主要介紹了JavaScript模板引擎實現(xiàn)原理,結(jié)合實例形式詳細分析了JavaScript模板引擎原理、定義、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下
    2018-12-12
  • JavaScript、jQuery與Ajax的關(guān)系

    JavaScript、jQuery與Ajax的關(guān)系

    這篇文章主要介紹了 JavaScript、jQuery與Ajax的關(guān)系的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • JS+CSS實現(xiàn)3D切割輪播圖

    JS+CSS實現(xiàn)3D切割輪播圖

    這篇文章主要為大家詳細介紹了JS+CSS實現(xiàn)3D切割輪播圖,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Javascript 不能釋放內(nèi)存.

    Javascript 不能釋放內(nèi)存.

    Javascript 不能釋放內(nèi)存....
    2006-09-09
  • 不安全的常用的js寫法

    不安全的常用的js寫法

    一種很常見的寫法,大家都是這樣寫的,但如果這樣的代碼,殺毒軟件認為是病毒的吧,就太惡劣的。判斷能力也太差了。
    2009-09-09
  • javascript實現(xiàn)簡單計算器效果【推薦】

    javascript實現(xiàn)簡單計算器效果【推薦】

    下面小編就為大家?guī)硪黄猨avascript實現(xiàn)簡單計算器效果【推薦】。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考
    2016-04-04
  • JavaScript 一道字符串分解的題目

    JavaScript 一道字符串分解的題目

    要求用js寫一個函數(shù),對傳入的形如下網(wǎng)址字符串,返回對應(yīng)的對象。
    2011-08-08

最新評論