我们知道数组方法有 push pop shift unshift splice slice sort indexOf join concat…
在es6中有哪些新增的数组方法呢?
find()
数组实例的find方法,用于找出第一个符合条件的数组成员
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=1, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
</body>
<script>
var arr = [
{
id: 1,
age: 22,
name: "姓名1"
},
{
id: 2,
age: 33,
name: "姓名2"
},
{
id: 3,
age: 25,
name: "姓名3"
},
{
id: 4,
age: 27,
name: "姓名4"
}
]
var r = arr.find(function (value, index, a) {
// 三个参数 第一个参数 数组中的每一项 第二个参数索引 第三个参数 数组本身
return value.age > 25
})
console.log(r)
</script>
</html>
findIndex
数组实例的findIndex方法的用法与find方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1
var r = arr.findIndex(function (v, i, aa) {
return v.age < 80
})
console.log(r)
```//数组还是上面的arr
数组实例的 includes()
表示某个数组是否包含给定的值 如果包含 返回true 不包含返回false
var a1 = ["hello", "vue", "react", "微信"];
var r = a1.includes("vue");
console.log(r)
isArray 判断变量 是不是数组 如果是 返回true 不是 返回 false
var a = Array.isArray(a1);
console.log(a)
forEach 遍历数组
arr.forEach(function(v,index,a){
// v 每一项 index 索引 a 当前数组
console.log(index)
console.log(a)
})
filter 过滤数组 返回值是一个新的数组 符合条件那些元素
var re = a3.filter(function(v){
return v.price > 1000
})
// console.log(re)
map 处理数组的每一个元素 返回一个新的数组 处理过的元素
var a4 = a3.map(function(v){
var p = v.price + 100
v.price = p;
return v
})
console.log(a4)
every 判断数组的每一项是否符合条件 只要有一个不符合是 false 跟与运算 有点像
var f = a5.every(function(v){
return v.score >= 60
})
// console.log(f)
some 方法 遍历数组 查找符合条件的只要有一项符合 就返回true 返回值是布尔值 跟或运算类似
var f1 = a5.some(function(v,i){
console.log(i)
return v.score >= 80
})
// console.log(f1)