版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012054869/article/details/82015787
数组对象新增的方法
4.find()和findIndex()方法
(1)find() 返回数组中第一个满足条件的元素,参数是回调函数
例子:
<script>
//返回数组中第一个满足条件的元素
let arrs = [0,3,45,32,5,60,-3,89];
console.log(arrs);
//第一种:从数组中获取第一个>5的元素
let res = arrs.find(function(val){
if (val > 5) {
return true;//只要>5结束循环,只要碰到>5的结束查询
}
return false;
});
console.log(res);//输出45
//第二种:
let res2 = arrs.find(function(val){
return val>5;//比较表达式,返回布尔值
});
console.log(res2);//输出45
//第三种:箭头函数
let res3 = arrs.find(val=>val>5);//比较表达式,返回布尔值
console.log(res3);//输出45
</script>
(2) findIndex()返回数组中第一个满足条件的元素的索引,参数是回调函数
例子:
<script>
//findIndex()获取数组中第一个奇数元素的索引
//第一种:传统函数
let res4 = arrs.findIndex(function(val){
return (val%2) !== 0;//输出2,第3个参数
})
console.log(res4);
//第三种:箭头函数
let res5 = arrs.findIndex(val=>(val%2) !== 0);//比较表达式,返回布尔值
console.log(res5);//输出索引为2,即指45
</script>
5.entries(),keys()和values()方法
遍历数组
(1)entries(),遍历数组中的key和value,for...of方法;
(2)keys(),遍历数组中所有的索引值,for...of 数组名称.key()
(3)values(),遍历出key值,chrome中未能实现
例子:
<script>
// entries(),keys()和values() 遍历数组
let arr = ['橙子','西瓜','橙子','葡萄','苹果','香蕉'];
console.log(arr.keys());//输出Array Iterator { },迭代器接口数组
//keys()遍历数组中所有的索引值
//遍历,输出key值
for(let k of arr){
console.log(k);//输出key值,'橙子','西瓜','橙子','葡萄','苹果','香蕉'
}
// 遍历输出索引值,只需数组.key()
for(let k of arr.keys()){
console.log(k);//输出索引值值,0,1,2,3,4,5
}
//遍历出key值,方法二values()
for(let k of arr.values()){
console.log(k);//输出key值,'橙子','西瓜','橙子','葡萄','苹果','香蕉'
}//chrome中没有实现values()方法
//entries()遍历数组中的key和value
for(let [key,val] of arr.entries()){
console.log(key,val);//输出0 橙子1 西瓜2 橙子3 葡萄4 苹果5 香蕉
}
</script>
6. includes()方法
表示数组中是否包含某个指定的值,返回布尔值
例子:
<script>
// entries(),keys()和values() 遍历数组
let arr = ['橙子','西瓜','橙子','葡萄','苹果','香蕉'];
console.log(arr.includes("西瓜"));//返回true
</script>