我经常使用JavaScript对象。非常喜欢。
相对来说,数组虽然也很好用,但JavaScript Object提供了另一层次的数据结构和数据信息,这是简单的数组是无法比拟的。
例如,我们可以非常方便的从一个JavaScript对象里寻找一个键值,比在数组里更迅速。
通常我们探索一个对象里的属性时,喜欢使用hasOwnProperty()
方法,其实这个方法很不优雅;Object.keys
(不是Object.prototype.keys
)返回的正是一个对象属性数组!
var person = {
firstName: 'David',
lastName: 'Walsh',
// ...
};
Object.keys(person).forEach(function(trait) {
console.log('Person ', trait,': ', person[trait]);
});
这个方法还可以用在Json对象上,用在简单的JavaScript对象里,所以,放弃陈旧的老式方法吧,使用优雅的Object.keys。
判断数组或对象是否为空,非常有用,尤其是我用到小程序的开发上面,结果是非常的爽,极力推荐使用。
实例:
假设express 的值为 {}, 大括号是对象类型的,因为没有 .length 属性。
如果为空对象
Object.keys(express).length 返回 0
如果不是空对象,那么
Object.keys(express).length 返回 大于 0 的值。