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

辨析JavaScript中的Undefined類(lèi)型與null類(lèi)型

 更新時(shí)間:2016年05月26日 16:38:54   作者:Murphywuwu  
Undefined與null都是js中的基本數(shù)據(jù)類(lèi)型,然而正如它們的名字那樣,未初始化和空并不相同,下面我們就來(lái)詳細(xì)辨析JavaScript中的Undefined類(lèi)型與null類(lèi)型:

Undefined
表示變量已聲明,但未被初始化。需要注意的是當(dāng)使用typeof操作符判斷數(shù)據(jù)類(lèi)型時(shí),未被聲明的變量和未初始化的變量返回的值都為undefined

var message;
console.log(typeof message);//undefined
console.log(typeof age);//undefined

null:表示一個(gè)空對(duì)象指針
使用typeof操作符返回的值是'object',需要注意的是,undefined值是派生自null值的,因此ECMA-262規(guī)定對(duì)它們的相等性測(cè)試要返回true。

console.log(null == undefined);//true

undefined與null的區(qū)別
(1)undefined表示一個(gè)變量沒(méi)有被聲明,或者被聲明了但沒(méi)有被賦值
(2)null是一個(gè)表示“沒(méi)有值”的值
(3)Javascript將未賦值的變量默認(rèn)值設(shè)為undefined
(4)Javascript從來(lái)不會(huì)將變量設(shè)為null。它是用來(lái)讓程序員表明某個(gè)用var聲明的變量時(shí)沒(méi)有值的。
(5)undefined不是一個(gè)有效的JSON,而null是
(6)undefined的類(lèi)型(typeof)是undefined,null的類(lèi)型(typeof)是object.

PS:它們都是基本類(lèi)型
他們都是falsy (Boolean(undefined) // false, Boolean(null) // false)
你可以這樣判斷一個(gè)變量是否是undefined

 typeof variable === "undefined"

你可以這樣判斷一個(gè)變量是否是null

 variable === null

雙等號(hào)比較時(shí)它們相等,但三等號(hào)比較時(shí)不相等

 null == undefined // true
 null === undefined // false

相關(guān)文章

最新評(píng)論