JS中关于null、“”、undefined三者的具体区别?

刚刚开始学习JS,发现在赋值的时候经常会有如下的三种写法
var a = Null;
var b;
var c ="";
请问这三者的赋值分别有着什么样的含义?

阅读 5.7k
3 个回答

虽然在 Language Specification 中 null 是一种类型,但是用 typeof null 得到的是 "object"。它主要用来表示空对象。

undefined 也是一种类型,它通常用来表示未赋值/没有值。

"" 是字符串,typeof "" 得到的是 "string"。它表示一个没有任何字符的字符串。

不过有趣的是,当他们作为布尔值来使用的时候,都会被判为 false。另外 undefined == nullundefined !== null,也就是说,JS 认为他们值相等,但类型不同。

var a = null;//a被初始化为一个空对象null;如果定义的变量准备在将来用于保存对象,一般将变量初始化为null
typeof a;//object

var b;//b未被初始化
typeof b;//undefined

var c = "";//c被初始化为字符串,值为空
typeof c;//string

底層無法提供說明,概略來說就是三種不同的東西 null undefined 空字串 只是在比較時情況有些複雜 http://zero.milosz.ca

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题