『壹』 如何遍歷一個js對象中的所有屬性
直接用js裡面自帶的for..in就可以實現了。
varo={a:1,b:2,c:3,d:4};
for(varnameino){
console.log(name+':'+o[name]);
}
這樣就可以把o對象裡面的所以屬性專都遍屬歷一遍了。
『貳』 js遍歷對象的方法
1、
使用Object.keys()方法遍歷
即返回一個數組,其中包括對象自身的(不包含繼承的)所有可枚舉屬(但是不包含Symbol屬)
示例代碼如下:
var obj = {'0':'a','1':'b','2':'c'};
Object.keys(obj).forEach(function(key){
console.log(key,obj[key]);
});
2、
使用for..in..語句遍歷
循環遍歷對象自身的與繼承的可枚舉屬(不包含Symbol屬)。
示例代碼如下:
var obj = {'0':'a','1':'b','2':'c'};
for(var i in obj) {
console.log(i,":",obj[i]);
}
3、
使用Object.getOwnPropertyNames(obj)方法遍歷
即返回一個數組,其中包含對象自身的所有屬(不包含Symbol屬,但是包含了不可枚舉屬)。
示例代碼如下:
var obj = {'0':'a','1':'b','2':'c'};
Object.getOwnPropertyNames(obj).forEach(function(key){
console.log(key,obj[key]);
});
4、
使用Reflect.ownKeys(obj)方法遍歷
即返回一個數組,其中包含對象自身的所有屬,不管屬名是Symbol或字元串,也不管是否可枚舉。
示例代碼如下:
var obj = {'0':'a','1':'b','2':'c'};
Reflect.ownKeys(obj).forEach(function(key){
console.log(key,obj[key]);
});