javaScript遍歷對象總結
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]);
});
javaScript遍歷數組總結
1、使用forEach遍歷
var arr=[1,2,3,4];
arr.forEach(function(val, index) {
console.log(val, index);
});
2、使用for…in…遍歷
var arr=["張三","李四","王五","趙六"];
for (var i in arr){
console.log(i,":",arr[i]);
}
3、使用for-of遍歷
// 不僅支持數組,還支持大多數類數組對象,例如DOM NodeList對象.
// 也支持字符串遍歷,它將字符串視爲一系列的Unicode字符來進行遍歷.
var arr=["張三","李四","王五","趙六"];
for (var value of arr){
console.log(value);
}