DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> javascript中2個感歎號的用法實例詳解
javascript中2個感歎號的用法實例詳解
編輯:關於JavaScript     

在javascript代碼中經常會見到!!的情況,本文即以實例形式較為深入的分析javascript中2個感歎號的用法。分享給大家供大家參考之用。具體分析如下:

javascript中的!!是邏輯"非非",即是在邏輯“非”的基礎上再"非"一次。通過!或!!可以將很多類型轉換成bool類型,再做其它判斷。

一、應用場景:判斷一個對象是否存在

假設有這樣一個json對象:

{ color: "#E3E3E3", "font-weight": "bold" }

需要判斷是否存在,用!!再好不過。

如果僅僅打印對象,無法判斷是否存在:

var temp = { color: "#A60000", "font-weight": "bold" };
alert(temp);

結果:[object: Object]

如果對json對象實施!或!!,就可以判斷該json對象是否存在:

var temp = { color: "#A60000", "font-weight": "bold" };
alert(!temp);

結果:false

var temp = { color: "#A60000", "font-weight": "bold" };
alert(!!temp);

結果:true

二、通過!或!!把各種類型轉換成bool類型的慣例

1.對null的"非"返回true

var temp = null;
alert(temp); 

結果:null

var temp = null;
alert(!temp); 

結果:true

var temp = null;
alert(!!temp); 

結果:false

2.對undefined的"非"返回true

var temp;
alert(temp);

結果:undefined

var temp;
alert(!temp);

結果:true

var temp;
alert(!!temp);

結果:false

3.對空字符串的"非"返回true

var temp="";
alert(temp);

結果:空

var temp="";
alert(!temp);

結果:true

var temp="";
alert(!!temp);

結果:false

4.對非零整型的"非"返回false

var temp=1;
alert(temp);

結果:1

var temp=1;
alert(!temp);

結果:false

var temp=1;
alert(!!temp);

結果:true

5.對0的"非"返回true

var temp = 0;
alert(temp);

結果:0

var temp = 0;
alert(!temp);

結果:true

var temp = 0;
alert(!!temp);

結果:false

6.對字符串的"非"返回false

var temp="ab";
alert(temp);

結果:ab

var temp="ab";
alert(!temp);

結果:false

var temp="ab";
alert(!!temp);

結果:true

7.對數組的"非"返回false

var temp=[1,2];
alert(temp);

結果:1,2

var temp=[1,2];
alert(!temp);

結果:false

var temp=[1,2];
alert(!!temp);

結果:true

相信本文所述對大家的javascript程序設計的學習有一定的借鑒價值。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved