【面向JS--数组遍历】
来源:互联网 发布:有没有哪种编程的实例 编辑:程序博客网 时间:2024/05/21 05:05
数组遍历:循环得到数组中的每一个元素。
最基本的数组遍历就是循环结构,for循环 while循环等。此处只说一说为方便我们开发而那些内置的方法:
1、forEach
缺点:不能中断循环,没有break/continue方法。
var arr=[1,2,3,4,5,6];arr.forEach(function(value,index){ if(index < 5){ console.log(index+':'+value) }})
2、some
//some 方法在return值为true时终止遍历var arr=["java","lua","go","ruby"];arr.some(function(value,index){ console.log(index+" : "+value) return value==="go"})//打印结果//0 : java//1 : lua//2 : go//true
3、every
//every方法是当return返回值为false时退出循环var arr=["java","lua","go","ruby"];arr.every(function(value,index){ console.log(index+" : "+value) return value.length>3})//打印结果//0 : java//1 : lua//false
4、map
操作数组中的每个元素,将每个元素操作后的结构封装进一个新数组。
var arr=[1,3,5,7]var newArr=arr.map(function(x){ return 0.5*x+3})
5、filter
返回符合要求的元素
//取出数组中大于10的数var arr=[1,5,17,23,9,12,10]var newArr=arr.filter(function(ele){ return ele>10})//print result://newArr=[17,23,12]
6、reduce
educe()接受一个方法作为回调,是一个数组逐项处理方法
arr.reduce(callback[previousValue,currentValue],initialValue)
其中initialValue作为第一次调用时传给previousValue的值
previousValue 为上一次callback的返回值,所以适用于递归
var arr=[1,2,3,4]var sum=arr.reduce(function(pre,cur){ return pre + cur; }) //10var multiplicative=arr.reduce(function(pre,cur){ return pre * cur})//24var max=arr.reduce(function(pre,cur){ return pre>cur?pre:cur})//4
7、for - in
for - in 是专门用来循环带有字符串key的可枚举对象的方法(哈希数组,对象)
var obj = {a:1, b:2, c:3};for(var key in obj){ console.log(key+" : "+obj[key])}//a : 1//b : 2//c : 3
8、for-of
这是ES6新提出的循环方法,可以用来循环除了适用于for-in的可枚举对象之外的任何东西。
//数组let arr=["java","lua","go","ruby"];//let es6语法 类似varfor(let ele of arr){ console.log(ele)}//字符串let str="minelab"for(let char of str){ console.log(char)}
阅读全文
0 0
- 【面向JS--数组遍历】
- JS遍历打印、遍历数组
- JS 遍历数组显示
- JS遍历数组
- js 遍历json数组
- js遍历数组
- js中遍历数组
- 遍历js数组
- JS遍历数组
- JS遍历数组
- js 数组循环遍历
- js遍历json数组
- js数组遍历
- js遍历数组
- js 创建遍历数组
- JS 数组遍历
- js数组遍历求和
- js对象数组遍历
- 极光推送
- java 学习--kotlin的安装配置
- cuda win10安装
- 使用webpack构建本地服务器,实现自动刷新
- 智能硬件安全问题凸显 海云安护航个人信息安全
- 【面向JS--数组遍历】
- Ruby学习笔(06)_方法
- seo高手需要具备的能力
- 判断两个链表是否相交,及其第一个公共交点
- Linux中JDK安装及环境变量配置
- 实验二顺序表
- springmvc处理上传图片代码(校验图片尺寸、图片大小)
- 4.Unity_Shader_CG 高光反射模型
- SVN汉化包安装方法