
js数组常用循环
发布日期:2021-05-09 09:32:36
浏览次数:4
分类:博客文章
本文共 1889 字,大约阅读时间需要 6 分钟。
1.for循环
let arr=[1,2,3,4,5] for (let i = 0; i < arr.length; i++) { //continue //return console.log(arr[i]) }
for循环中的 continue 可以结束本次循环,直接进行下次 i 改变的循环,return 结束整个循环。
2.forEach()
arr.forEach((item,index,array)=>{ console.log(item); console.log(index); console.log(array);})
foeEach 没有返回值,不会改变原数组,item 是每次的值, index 是 下标 ,array 是数组本身,forEach 不支持 continue return 语句。
3.map()
let arr = [1, 2, 3, 4];let newArr = arr.map((item, index, array) => { return item * 10;});console.log(newArr); // [10, 20, 30, 40];console.log(arr);
map 不会改变原数组,会返回一个处理过后新数组 ,Item,index,array 同 forEach一样。改变新数组 newArr 的 内容 不会改变原数组。
4.filter()
let arr = [1, 2, 3, 4];let newArr = arr.filter((item, index, array) => { return item > 2;});console.log(newArr); // [3,4]console.log(arr); // [1, 2, 3, 4]
filter 过滤 不改变原数组,会返回一个新数组。会过滤掉不符合条件的元素,把符合条件的元素添加到一个新数组中,
5.reduce()
let arr = [1, 2, 3, 4];let newArr = arr.reduce((x, y,index,array) => { console.log("x,"+x); console.log("y,"+y); console.log("x+y,",Number(x)+Number(y)); return x + y;});console.log(newArr); // 10console.log(arr); // [1, 2, 3, 4]
reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值,
x 必填 初始值或计算结束后的返回值,y 必填 当前元素index 非必填 当前元素的索引array 非必填 当前数组6.every()
let arr = [1, 2, 3, 4];let flag = arr.every((item, index, array) => { return item > 3;});console.log(flag);
every() 每一项都为true,只要有一项不符合条件就为false,就返回false。
7.some()
let arr = [1, 2, 3, 4];let flag = arr.some((item, index, array) => { return item > 5;});console.log(flag);
循环数组,数组中有一项符合条件就返回true,并且停止循环,否则返回false。
8.for of
let arr = [1, 2, 3, 4];for (const item of arr) { console.log(item);}
9.for in
#遍历数组let arr = [1, 2, 3, 4];for (var index in arr) { console.log(arr[index]);}#遍历对象let obj={a:1,b:2,c:3}for (var key in obj) { if(obj.hasOwnProperty(key)){ console.log(key) }}
for in 可以遍历到 obj 的原型方法method,如果不想遍历原型方法和属性的话,可以在循环内部判断一下,hasOwnPropery方法可以判断某属性是否是该对象的实例属性。
转载地址:https://www.cnblogs.com/zoule/p/14705715.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2023年09月22日 10时14分50秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
orderList.vue
2019-03-07
Mysql对表和字段的新增、修改、删除和查询常用语句
2019-03-07
7-11 全排列
2019-03-07
7-12 n queens
2019-03-07
7-13 最大子列和问题
2019-03-07
7-14 杨辉三角
2019-03-07
7-15 数的划分
2019-03-07
7-16 整数拆分
2019-03-07
7-19 汉诺(Hanoi)塔问题
2019-03-07
7-20 交换实现的全排列
2019-03-07
7-24 矩阵连乘问题
2019-03-07
7-25 最长上升子序列
2019-03-07
QT构建步骤配置
2019-03-07
new QPushbutton 时程序崩溃
2019-03-07
Qt调试时加载插件程序死循环直接运行没问题
2019-03-07
Qt实现简单的二维曲线图
2019-03-07
C++23种设计模式之工厂模式
2019-03-07
Qt搭建多线程服务器
2019-03-07
基于Linux下的ncurses图形库编写的贪吃蛇小游戏
2019-03-07