//参数
//item:数组的每一项的值
//index: 数组每一项对应的下标
//origin: 原始数组
-
foreach 遍历
-
语法 : 数组.forEach(function(item,index,origin)){
console.log(item,index,arr)
} //里面有三个参数,item:表示元素,index表示下标,origin原数组
var arr =["aaa","bbb","ccc","ddd"] arr.forEash(function(item,index,arr)){ console.log(item,index,arr) }//输出元素,下标,原数组 //很少用第三个参数 -
map 映射(不影响原数组)
- 语法:数组.map(function(item,index,origin){})
var arr = [1,2,3,4,5] //回调函数 var arr1 =arr.map(function(item)){ return item*item }//return 什么就返回什么,结果为1,4,9,16,25 var arr2 =arr.map(function(item)){ retrun "<li>"+item+"</li>" }//返回<li>1</li>,<li>2</li>..... //return 返回的值是什么就映射什么 -
filter 过滤
- 语法:数组.filter(function(item,index,origin){})
var arr=[100,200,300] //回调函数 var arr1=arr.filter(function(item){ retrun item>200 })//结果为300, var arr3 =[ { name:"aaa", price:100 } { name:"bbb", price:100 } { name:"ccc", price: } ] var arr4= arr3.filter(function(item){ return item.price>200 })//输出 ccc 300 -
every 每一个(每一个都满足条件)
- 语法:数组.every(function(item,index,origin){})
- 作用:判断数组内是否都满足条件
- 返回值 : true/false
- 判断条件以return 的形式书写
var arr=[89,90,92,94] var arr1=arr.every(function(item){ return item>=90 })//结果为false //如果满足每一个满足条件结果就为true -
some 只要一个满足条件,就是true
- 语法:数组.some(function(item,index,origin){})
- 作用:判断数组内是否有一个满足条件
- 返回值 : true/false
- 判断条件以return 的形式书写
var arr=[89,90,92,94] var arr1=arr.some(function(item){ return item>=90 })//结果为true //都不满足结果为false -
find 查找符合条件的一项,(输出一个)
- 语法:数组.find(function(item,index,origin){})
var arr3 =[ { name:"数学", price:96 } { name:"语文", price:100 } { name:"英语", price:85 } { name:"地理", price:100 } ] var arr4= arr3.find(function(item){ return item.price===100 })//输出 语文 100 //如果有多个满足条件按也只是输出第一个 //返回值 :找到的数据,如果没有就返回undefined -
findIndex 在数组内查找满足条件的第一项的下标
-
语法 数组.findIndex(function(item,index,origin){})
-
返回值 :找到的数据的下标,如果没有就返回-1
-
查找条件以return 的形式书写
var arr=["100","200","300","400","500"] var arr2=arr.findIndex(function(item,index,oring))( rerurn>300 ) console.log(arr2)
-
-
reduce 叠加
-
语法 数组名.redduce (function(prev,item){},初始值)prev上一次的结果,item
-
prev: 表示初始值,或上一次的运算结果
-
item :表示数组每一项的下标(索引)
-
orgin:原始数组
-
作用: 用来实现叠加效果
-
返回值最终叠加的结果
-
注意
- 叠加的条件以return的形式书写
- prev, 第一次的值,如果你传递了init们就是init的值,如果没有传递init ,那么就是数组[0]的值
- 如果传递了init ,循环执行,数组.length,吐过没有传递init,循环执行 数组.length-1 次
var arr=[1,2,3,4,5] var arr1 =arr.reduce(function(prev,item){ return prev+item },0) //1 : prev 0 item 1 //2 : prev 1 item 2 //3 : prev 3 item 3 //4 : prev 6 item 4 //5: prev 10 item 5 // prev 15 //结果为15 //叠加的一个效果 -