摘要:和操作符看到下面的式子,新人肯定認為他們的值是或布爾的運算難道不是或找第一個假值,如果沒有假值,返回最后一個真值找第一個真值,如果沒有真值,返回最后一個假值內部不是簡單的輸出或,因為除了個值之外其它指對來說都是,所以剛開始接觸的時候會很迷惑
||和&&操作符
看到下面的式子,新人肯定認為他們的值是true或false
a || b c && d
布爾的運算難道不是true或false?
1 && 2 && 3 && 4 && 5 //5 1 && 0 && 2 && 3 && 4 && 5 //0 1 && 0 && console.log(3) //0
&&找第一個假值,如果沒有假值,返回最后一個真值
0 || undefined || 1 || null //1 0 || undefined || null //null
||找第一個真值,如果沒有真值,返回最后一個假值
Boolean 內部不是簡單的輸出true或false,因為除了5個falsy值之外其它指對Boolean 來說都是true,所以剛開始接觸的時候會很迷惑。
明白了這些之后,可以利用這個特性做一些小技巧
var a = 1 //不合格代碼
做項目時不知道前面有沒定義a,這樣寫的話很容易除bug
所以在定義a時可以做一個判斷
var a = a || {} //如果前面有a,就用前面定義的a;如果前面沒有a,就用a = {}
等價于:
if(a){ a=a //如果a存在,就運行a }else{ a={} //如果a不存在,把a賦值為{} }
等價于:
if(!window.a){ //寫成!a的話,如果a真的不存在,會報錯。 a = {} }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/107921.html
摘要:是一門清晰簡潔的語言,如果你對一些細節不了解的話,就會掉入到那些深不見底的坑里,下面,我就來總結一些里常見的坑。這是個很常見但很容易被忽略的一個坑。 Python是一門清晰簡潔的語言,如果你對一些細節不了解的話,就會掉入到那些深不見底的坑里,下面,我就來總結一些Python里常見的坑。 列表創建和引用 嵌套列表的創建 使用*號來創建一個嵌套的list: li = [[]] ...
摘要:梯度下降算法梯度是個啥我想最開始接觸梯度的各位是在方向導數那一章接觸這一概念的,如果老師沒怎么講的話可能有些人還不知道梯度是個向量。在二維條件下,因為有了兩個偏導數,所以這個向量能表示一圈。 講你肯定能懂的機器學習多維極值求解事先說明本文面向學習過高等數學統計學和線性代數基礎知識的本科生,并假設讀者擁有基本的矩陣運算和求導運算的相關知識,類似梯度,方向導數、Hessian Matrix這些東...
閱讀 2837·2021-09-28 09:45
閱讀 1510·2021-09-26 10:13
閱讀 905·2021-09-04 16:45
閱讀 3665·2021-08-18 10:21
閱讀 1092·2019-08-29 15:07
閱讀 2637·2019-08-29 14:10
閱讀 3150·2019-08-29 13:02
閱讀 2465·2019-08-29 12:31