JavaScript基本概念C - 真與假
阿新 • • 發佈:2018-04-28
不同 java defined def ++ undefined clas define 數值
- 真與假
與 c 和 c++ 非常相似, 但與 Java 不同, JS中被認為true或false範圍很廣。所有對象 (空字符串除外) 和非零數字都被視為 true。空字符串、零、null 和undefined 被視為 false。
undefined 是一個特殊值。未分配任何值時的所有變量都是undefined。清楚?:)同樣, 不返回值的所有函數實際上返回undefined 。事實上, 它是一個關鍵字。因此, 下面的代碼是有效的:
var a = undefined;
其實和下面是類似的
var a;
- 值強轉
在 js 中, 當你嘗試用值做一些不可能的事情時, js 會盡量讓它們兼容並輸出一些有意義的結果。
例如: ! 0 實際上是布爾類型的true, !一般只能和布爾型一起使用。 ‘ 2 ‘ * 1 實際上是數字 2, 因為 * 不能用在字符串上。但是, ‘ 2 ‘ + 1 是字符串 21, 因為由於存在一個字符串, 該數字被強制為字符串。
有個小建議。你可以這麽使用 – var hasChildren = !!children.length; 這會將hasChildren設置合適的布爾數值。
JavaScript基本概念C - 真與假