null 和{}的那点事
直接上代码
console.log(typeof null); //object console.log(typeof {}); //object
可以看到两者的类型都是object ,写在前面的事;
一直很困惑,null和{}不是应该一样吗,都表示空对象吗???
console.log(null=={}); //false
打印出来可以看到结结实实的一个false,上网查这方面的资料特别少,最近终于知道了两者的区别
null其实是表示尚未存在的对象,而{}才代表一个真正的空对象,即表示其中没有数据,或许你还是有点困惑,我们看代码
console.log(null == document.getElementById('aaa')); //true aaa是一个不存在的元素
或许看到这里你就明白了什么是null
总结:我们可以简单的理解为,null是一个不存在的对象的占位符,而{}是一个真正的对象,只不过其中没有数据而已。