1. 程式人生 > >js---null與空字串""的區別

js---null與空字串""的區別

1、型別

null表示的是一個物件的值,而並不是一個字串。例如宣告一個物件的引用,String a = null ;

""表示的是一個空字串,也就是說它的長度為0。例如宣告一個字串String str = "" ;

 

2、記憶體分配

String str = null ; 表示宣告一個字串物件的引用,但指向為null,也就是說還沒有指向任何的記憶體空間

String str = "";    表示宣告一個字串型別的引用,其值為""空字串,這個str引用指向的是空字串的記憶體空間

 

在java中變數和引用變數是存在棧中(stack),而物件(new產生的)都是存放在堆中(heap):

    console.log(typeof null) //object
    console.log(typeof "") //string