JS遍历数组和对象的常用方法有哪些?

简介: JS遍历数组和对象的常用方法有哪些?

在JavaScript中,遍历数组和对象的常用方法有很多。以下是一些常用的方法:

遍历数组

   for 循环:

       这是最传统的遍历数组的方法。

   javascript

var array = [1, 2, 3, 4, 5];  
for (var i = 0; i < array.length; i++) {  
    console.log(array[i]);  

}

for...of 循环

(ES6+):

   专门用于遍历可迭代对象(包括数组、Map、Set、String、TypedArray、函数的 arguments 对象等等)。

javascript

var array = [1, 2, 3, 4, 5];  
for (var item of array) {  
    console.log(item);  

}

forEach 方法:

   forEach 是数组的一个方法,用于遍历数组的每个元素。

javascript

var array = [1, 2, 3, 4, 5];  
array.forEach(function(item) {  
    console.log(item);  

});

map 方法:

   map 方法也用于遍历数组,但通常用于生成新的数组,通过函数处理每个元素。

javascript

var array = [1, 2, 3, 4, 5];  
var newArray = array.map(function(item) {  
    return item * 2;  
});  

console.log(newArray); // [2, 4, 6, 8, 10] 

filter 方法:

   filter 方法用于过滤数组中的元素,返回满足条件的元素组成的新数组。

javascript

var array = [1, 2, 3, 4, 5];  
var filteredArray = array.filter(function(item) {  
    return item > 3;  
});  

console.log(filteredArray); // [4, 5] 

reduce 方法:

   reduce 方法对累加器和数组中的每个元素(从左到右)应用一个函数,将其减少为单个输出值。

javascript

var array = [1, 2, 3, 4, 5];  
var sum = array.reduce(function(accumulator, currentValue) {  
    return accumulator + currentValue;  
}, 0);  

    console.log(sum); // 15 

  some 和 every 方法:

       some 测试数组中是否至少有一个元素通过由提供的函数实现的测试。

       every 测试数组的所有元素是否都通过了由提供的函数实现的测试。


遍历对象


   for...in 循环:

       用于遍历对象的可枚举属性(包括继承的属性)。


   javascript

var obj = {a: 1, b: 2, c: 3};  
for (var key in obj) {  
    if (obj.hasOwnProperty(key)) { // 过滤掉继承的属性  
        console.log(key, obj[key]);  
    }  

} 

Object.keys() 方法:

   返回一个表示给定对象的所有可枚举属性的字符串数组(不包括继承的属性)。

javascript

var obj = {a: 1, b: 2, c: 3};  
Object.keys(obj).forEach(function(key) {  
    console.log(key, obj[key]);  

});

Object.values() 方法(ES2017+):

   返回一个给定对象自身可枚举属性的值组成的数组,其排列与使用 for...in 循环的顺序相同(两者的主要区别是 for-in 循环枚举原型链中的属性)。

javascript

var obj = {a: 1, b: 2, c: 3};  
Object.values(obj).forEach(function(value) {  
    console.log(value);  

});
相关文章
|
9天前
|
存储 JavaScript 对象存储
js检测数据类型有那些方法
js检测数据类型有那些方法
125 59
|
1天前
|
JavaScript 前端开发
js之浏览器对象|28
js之浏览器对象|28
|
3天前
|
JavaScript 前端开发 API
javaScript中常用的String方法以及注意点总结
本文总结了JavaScript中常用的String对象的方法及其注意事项,包括大小写转换、字符获取、子字符串截取、字符串拼接、去除空格、替换、分割以及查找字符串中字符的索引等操作。提供了每种方法的使用示例代码,帮助理解它们的具体用法和差异。
15 2
|
4天前
|
JavaScript 前端开发
JS之concat方法
本文介绍了JavaScript中`concat`方法的使用,展示了如何利用该方法来合并数组,包括与字符串、数字、对象等类型的拼接,以及使用扩展运算符进行合并的示例。
7 0
JS之concat方法
|
9天前
|
JavaScript 前端开发
JavaScript 中的新 Set 方法
JavaScript 中的新 Set 方法
|
23小时前
|
JSON JavaScript 前端开发
6-19|Python数据传到JS的方法
6-19|Python数据传到JS的方法
|
1天前
|
JavaScript 前端开发
JavaScript 中 五种迭代数组的方法 every some map filter forEach
本文介绍了JavaScript中五种常用数组迭代方法:every、some、filter、map和forEach,并通过示例代码展示了它们的基本用法和区别。
|
2月前
|
存储 JavaScript 前端开发
|
JavaScript
js基础笔记学习247event对象3
js基础笔记学习247event对象3
61 0
js基础笔记学习247event对象3
|
JavaScript
js基础笔记学习309筛选jquery对象1
js基础笔记学习309筛选jquery对象1
51 0
js基础笔记学习309筛选jquery对象1