首先,JS中的各種大爺指的是各種各種數(shù)據(jù)類型,
那為什么叫做大爺呢,因?yàn)樗鼈兪?code>JS中最基礎(chǔ)的,所謂經(jīng)濟(jì)基礎(chǔ)決定上層建筑嘛,這個(gè)道理在代碼界也是適用的。
當(dāng)然,人嘛總是容易犯懶的,這似乎是一條真理,所以先出答案吧,并且把它背起來后面的就不會(huì)再看下去了!
就是:
null、undefined、0、空字符串、NaN 為假,其它都為真
null、undefined、0、空字符串、NaN 為假,其它都為真
null、undefined、0、空字符串、NaN 為假,其它都為真
重要的話說三遍!!!
目前Javascript中有6種數(shù)據(jù)類型,分別是:
- Nubmer類型:比較特殊的有
NaN, - String類型: 比較特殊的有
'' 空字符串 - Boolean類型:只有兩個(gè)值
true和false - Object 類型:其中比較特殊的有
null ,因?yàn)閚ull 也是object類型 - undefined類型
- Symbol類型
當(dāng)各種類型的某個(gè)值作為條件來判斷真假時(shí),就會(huì)遇到某些情況:
- 不同類型的值會(huì)有不同的真假
- 同種類型的不同值也會(huì)有真假
以下就是各種類型當(dāng)條件來判斷時(shí)的真假情況,輸出結(jié)果放在最后:
console.log("各種類型的真假判斷\n");
console.log("1.String類型的真假判斷\n");
var s = "abc";
if(s){
console.log("'abc' is true.")
};
s = " ";
if(s){
console.log("空格字符串 ' ' is true.")
};
s = "";
if(s){
}else{
console.log("空字符串 '' is false.\n")
};
console.log("2.Number類型的真假判斷\n")
var n = 1;
if (n) {
console.log("1 is true.")
}
n = -1;
if (n){
console.log("-1 is true.")
}
n = 1.2;
if (n){
console.log("1.2 is true.")
}
n = 0;
if(0){
}else{
console.log("0 is false.")
}
n = NaN;
if(n){
console.log("NaN is true.")
}else{
console.log("NaN is false.\n")
}
console.log("3. Boolean類型\n")
var b = true;
if (b){
console.log("true is true.")
}
b = false;
if (!b){
console.log("false is false.\n")
}
console.log("4. null類型的真假判斷\n")
b = null;
if(!b){
console.log("null is false.")
}
console.log("\n5.undefined類型的真假判斷\n")
b = undefined;
if(!b){
console.log("undefined is false.")
}
console.log("\n6.Object類型的真假判斷\n");
var o = [];
if(o){
console.log("[] is true.");
}
o = {};
if(o){
console.log("{} is true.");
}
輸出結(jié)果:
各種類型的真假判斷
1.String類型的真假判斷
'abc' is true.
空格字符串 ' ' is true.
空字符串 '' is false.
2.Number類型的真假判斷
1 is true.
-1 is true.
1.2 is true.
0 is false.
NaN is false.
3. Boolean類型
true is true.
false is false.
4. null類型的真假判斷
null is false.
5.undefined類型的真假判斷
undefined is false.
6.Object類型的真假判斷
[] is true.
{} is true.
另外 symbol類型的待補(bǔ)充。。。