双等号== 对于基本数据类型是判断里面的值,但对于对象类型是判断等号两边的地址是否相同
==
三等号===是判断等号两边类型是否相等
===
代码
判断空数组不能使用等号,如下代码: var a = [] if(a === []){ console.log('hhahah') } //没有输出,[]可以理解为 new Array,三个等号是判断类型, //可为什么三个等号不行? //两个等号是针对对象的话是判断地址是否相等
使用JSON.stringify(obj) === '[]'即可
JSON.stringify(obj) === '[]'