最近在项目开发中判断空对象时,用了“!”运算符,结果程序出现bug,找了好久才找到原因。其实自己范了一些低级错误,现在把自己经验总结一下:在JavaScript中,任意JavaScript的值都可以转换为布尔值。下面这些值会被转换成false:undefined、null、0、-0、NaN、“”(空...
分类:
编程语言 时间:
2015-09-17 19:45:23
阅读次数:
135
JavaScript中判断一个对象是否为"空对象"
这里指的“空对象”是类似于:{ } 和 new Object() 这样的。
具体的代码实现和原理如下:
// 所谓"空对象",即不包括任何可枚举(自定义)的属性。简而言之,就是该对象没有属性可以通过for...in迭代。
// for-in循环会同时枚举非继承属性和从原型对象继承的属性,如果有,则立即返回false,否则默认返回true...
分类:
编程语言 时间:
2015-08-02 21:37:26
阅读次数:
142