js中遍历数组 和对象
**遍历对象常用 for in **
var stu ={
uname: "张三",
sex:"男",
age:"20",
number: 1001,
score:640,
}
for(var key in stu){
console.log('${key}:${stu[key]}');
}
遍历数组 for循环 for of 循环 forEach循环 map
var array = [1,2,3,4,5];
for(var i=0;i<array.length;i++){
console.log(array[i]);
}
for(var value of array){
console.log(value)
}
array.forEach(function(value,index,array){
console.log(value);
});
array.map(function(value,index,array){
console.log(value);
})
在JavaScript中,有多种方法可以遍历数组。以下是一些常见的方法:
1. for
循环
var array = [1, 2, 3, 4, 5];
for (var i = 0; i < array.length; i++) {
console.log(array[i])
}
2. for...of
循环(ES6)
var array = [1, 2, 3, 4, 5];
for (var value of array) {
console.log(value);
}
3. forEach
方法
var array = [1, 2, 3, 4, 5];
array.forEach(function(value, index, array) {
console.log(value);
});
4. map
方法(虽然通常用于转换数组,但也可以用于遍历)
var array = [1, 2, 3, 4, 5];
array.map(function(value, index, array) {
console.log(value);
// 注意:map 方法会返回一个新数组,但在这里我们不需要它
});
5. for...in
循环(不推荐用于数组遍历,因为它还会遍历原型链上的属性)
但如果你确实想要使用 for...in
循环遍历数组索引,你可以这样做:
var array = [1, 2, 3, 4, 5];
for (var index in array) {
if (array.hasOwnProperty(index) && !isNaN(index)) {
console.log(array[index]);
}
}
但请注意,for...in
主要用于遍历对象的属性,而不是数组的元素。它也会遍历到数组原型链上的属性,所以使用时需要小心。
6. 使用 Array.prototype.entries()
方法与 for...of
循环(ES6)
var array = [1, 2, 3, 4, 5];
for (var [index, value] of array.entries()) {
console.log(index, value);
}
7. 使用 Array.prototype.keys()
方法与 for...of
循环(ES6)
var array = [1, 2, 3, 4, 5];
for (var index of array.keys()) {
console.log(index, array[index]);
}
8. 使用 Array.prototype.values()
方法与 for...of
循环(ES6)
var array = [1, 2, 3, 4, 5];
for (var value of array.values()) {
console.log(value);
}
在这些方法中,for...of
和数组的 forEach
、map
方法是最常用的,因为它们提供了简洁且易读的代码。选择哪种方法取决于你的具体需求和偏好。
) {
console.log(value);
}
在这些方法中,`for...of` 和数组的 `forEach`、`map` 方法是最常用的,因为它们提供了简洁且易读的代码。选择哪种方法取决于你的具体需求和偏好。