0%

js中null和空字符串

null表示的是一个对象的值,而并不是一个字符串,如声明一个变量 var str = null;””表示的是一个长度为0空字符串,如声明一个变量 var str = ""

  1. 类型

    • null表示的是一个对象的值,而并不是一个字符串,如声明一个变量 var str = null;
    • “”表示的是一个长度为0空字符串,如声明一个变量 var str = "";
  2. 内存分配

    • var str = null ; 表示声明一个字符串对象的引用,但指向为null,也就是说还没有指向任何的内存空间;
    • var str = “”; 表示声明一个字符串类型的引用,其值为””空字符串,这个str引用指向的是空字符串的内存空间;
    1
    2
    console.log(typeof null)  //object
    console.log(typeof "") //string
  3. 等值判断

1
console.log('' == null) // false
  1. 扩展
1
2
3
4
5
6
7
8
console.log(0 == '')   //true 
console.log(0 == null) //false

console.log(false == '') //true
console.log(false == null) //false

console.log(undefined == '') //false
console.log(undefined == null) //true