1.find
用来查找目标元素,找到就返回该元素,找不到返回undefined
输出的是一旦判断为true则跳出循环输出符合条件的数组元素
let names = ["憨憨卷","花卷","糟老婆子"];
let res = names.find(t => t==='憨憨卷');
console.log(res);
`输出结果: 憨憨卷`
2.includes
判断数组是否包含某个元素,不用return,不用回调函数,返回布尔值
let names = ["憨憨卷","花卷","糟老婆子"];
let res = names.includes('憨憨卷');
console.log(res);
`输出结果: true`
3.filter
使用return操作输出,会循环数组每一项,并在回调函数中操作
返回满足条件的元素组成的
数组,不改变原数组
let names = ["憨憨卷","花卷","糟老婆子"];
let res = names.filter(t => t==='憨憨卷');
console.log(res);
`输出结果: ["憨憨卷"]
注意:结果是返回一个数组!!!`
4.Set
数组去重
let arr = [1,2,3,4,3,4];
let arr2 = [...new Set(arr)];
console.log(arr2);
`输出结果:[1, 2, 3, 4]`
5.交换两个变量的值
let [x,y] = [1,2];
[y,x] = [x,y];
console.log('x',x);
console.log('y',y);
`x ===> 2
y ===> 1`
6.forEach
回调函数参数,item(数组元素)、index(序列)、arr(数组本身)
循环数组,无返回值,
不改变原数组``
不支持return操作输出,return只用于控制循环是否跳出当前循环
let arr = [1,2,3,4];
arr.forEach(t=>console.log(t));
7.map
输出的是return什么就输出什么新数组
原数组被“映射”成对应新数组,
返回新数组,
不改变原数组``
let arr = [1,2,3,4].map(t => t+1);
console.log(arr);
`输出结果:[2, 3, 4, 5]`
8.some
some()是对数组中每一项运行给定函数,如果该函数对任一项返回true,则返回true
some一直在找符合条件的值,一旦找到,则不会继续迭代下去
返回布尔值,遇到满足条件变跳出循环
some 一真即真
let arr = [
{name:'jerry',sex:'man',age:14},
{name:'jack',sex:'woman',age:19},
{name:'bill',sex:'man',age:18}
];
let res = arr.some(t => t.age > 17);
console.log(res);
`输出结果:true`
9.every
every()是对数组中每一项运行给定函数,如果该函数对每一项返回true,则返回true
every从迭代开始,一旦有一个不符合条件,则不会继续迭代下去。 every() 不会对空数组进行检测
返回布尔值,遇到不满足条件跳出循环
every 一假即假
let arr = [
{name:'jerry',sex:'man',age:14},
{name:'jack',sex:'woman',age:19},
{name:'bill',sex:'man',age:18}
];
let res = arr.every(t => t.age > 17);
console.log(res);
`输出结果:false`
10.findIndex
数组实例的findIndex方法的用法与find方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1
let names = ["憨憨卷","花卷","糟老婆子"];
let res = names.findIndex(t => t==='憨憨卷');
console.log(res);
`输出结果: 0`
11.splice
将从数组中 添加/删除 元素,返回被删的元素
改变原来数组
array.splice(index,howmany,item1,...itemx)
参数:
index:必填。规定添加/删除元素的位置。
howmany:必填。要删除的元素数量。
itme1...itemx:可选。向数组添加的新元素。
let arr = new Array(6);
arr[0] = "George";
arr[1] = "John";
arr[2] = "Thomas";
arr[3] = "James";
arr[4] = "Adrew";
arr[5] = "Martin";
console.log('arr',arr);
arr.splice(2,1,'Gogo');
console.log('New-arr',arr);
`输出结果:
arr (6) ["George", "John", "Thomas", "James", "Adrew", "Martin"]
New-arr (6) ["George", "John", "Gogo", "James", "Adrew", "Martin"]`
12.reduce
累加器,输出的是return叠加什么就输出什么
对数组中的所有值求和
let num = [1,2,3,4];
let res = num.reduce((x,y) => x+y);
console.log(res);
`输出结果:10`