首頁 >web前端 >js教程 >javascript中的undefined和null有什麼差別

javascript中的undefined和null有什麼差別

清浅
清浅原創
2019-03-05 14:56:548779瀏覽

javascript中的undefined和null的差別有:型別不同前者回傳的是未定義值後者是物件;轉換原始型別方式不同前者是不支援轉換後者值為0

大多數使用JavaScript的人都會誤解null和undefined之間的關係,這兩個實體之間的關係不明確會導致嚴重問題。今天將要為大家分享如何區別null與undefined,具有一定的參考作用,希望對大家有所幫助

javascript中的undefined和null有什麼差別

【推薦課程:JavaScript教程

JavaScript中的Null值

null是JavaScript中的關鍵字,表示沒有值或任何值都不存在。例如我們想要將變數從指定值中刪除我們就可以簡單的指定其值為null。除此之外,與其他物件一樣永遠不會被JavaScript隱式賦值給變數。範例:

var demo= null;
console.log(demo)

javascript中的undefined和null有什麼差別

JavaScript中的undefined

undefined是JavaScript在執行階段建立的全域變量,下列情況之一中將此全域變數指派給物件

1、已宣告但未初始化或定義的物件

#2、不存在的陣列索引或物件屬性

#3、未提供的功能參數

4、必須但不傳回值的函數的傳回值

var demo;
console.log(demo)

javascript中的undefined和null有什麼差別

undefined與null之間的差異

1、null和undefined的類型不同

console.log(typeof(undefined)); //undefined
console.log(typeof(null));    //object

null是一個具有有效不存在值的對象,並且它是不可變的,而undefined的對象類型是本身未定義的

此外任何具有null值的算術運算都會產生整數值,而任何帶有undefined的算術運算都會導致變數值變成NaN

# 2、轉換為原始類型的方式不同

null和undefined之間的主要區別在於它們被轉換為原始類型的方式。在null上執行算術轉換時,確定的值為0可以使用以下程式碼片段驗證此轉換。

var v1= 5+ null;
console.log(v1)

輸出結果為5

但是undefined不執行任何此類轉換,如果將undefined添加到數字中得出的結果將為NaN

var v2= 5+ undefined;
console.log(v2)

輸出的結果總結NaN

:以上就是這篇文章的全部內容了,希望對大家有幫助。

以上是javascript中的undefined和null有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

相關文章

看更多