qiaoyurensheng

js数组的5种查询方式——find(),findIndex(),indexOf(),lastIndexOf(),include()




var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];

1.find() 返回数组中第一个满足条件的数据

// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum1 = num.find((item, index) => {
    return item > 40;
})
console.log("newNum1 = " + newNum1);//50

2.findIndex() 返回数组中第一个满足条件的索引(从0开始), 不满足返回-1

// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum2 = num.findIndex((item, index) => {
    return item > 40;
})
console.log("newNum2 = " + newNum2);//4

3.indexOf() 返回数组中第一个满足条件的索引(从0开始), 不满足返回-1

语法:arr.indexOf(searchElement[, fromIndex = 0])

// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum3 = num.indexOf(40);
var newNum4 = num.indexOf(40, 10);//从索引10的位置开始向后查找

console.log("newNum3 = " + newNum3);//3
console.log("newNum4 = " + newNum4);//-1

4.lastIndexOf() 返回数组中最后一个满足条件的索引(从0开始), 不满足返回-1

语法:arr.lastIndexOf(searchElement[, fromIndex = arr.length - 1])

// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum5 = num.lastIndexOf(40);
var newNum6 = num.lastIndexOf(40, 1);//从索引1的位置开始向前查找
console.log("newNum5 = " + newNum5);//3
console.log("newNum6 = " + newNum6);//-1

5.include() 判断数组宏是否包含某值,返回 true 或 false

语法:arr.includes(searchElement[, fromIndex])

// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum7 = num.includes(40);
var newNum8 = num.includes(40, 5);//从索引5的位置开始向后查找
console.log("newNum7 = " + newNum7);//true
console.log("newNum8 = " + newNum8);//false

代码合并

var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];

// 1.find() 返回数组中第一个满足条件的数据
// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum1 = num.find((item, index) => {
    return item > 40;
})
console.log("newNum1 = " + newNum1);//50

// 2.findIndex() 返回数组中第一个满足条件的索引(从0开始), 不满足返回-1
// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum2 = num.findIndex((item, index) => {
    return item > 40;
})
console.log("newNum2 = " + newNum2);//4

// 3.indexOf() 返回数组中第一个满足条件的索引(从0开始), 不满足返回-1
// 语法:arr.indexOf(searchElement[, fromIndex = 0])
// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum3 = num.indexOf(40);
var newNum4 = num.indexOf(40, 10);//从索引10的位置开始向后查找

console.log("newNum3 = " + newNum3);//3
console.log("newNum4 = " + newNum4);//-1

// 4.lastIndexOf() 返回数组中最后一个满足条件的索引(从0开始), 不满足返回-1
// 语法:arr.lastIndexOf(searchElement[, fromIndex = arr.length - 1])
// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum5 = num.lastIndexOf(40);
var newNum6 = num.lastIndexOf(40, 1);//从索引1的位置开始向前查找
console.log("newNum5 = " + newNum5);//3
console.log("newNum6 = " + newNum6);//-1

// 5.include() 判断数组宏是否包含某值,返回 true 或 false 
// 语法:arr.includes(searchElement[, fromIndex])
// var num = [10, 20, 30, 40, 50, 60, 70, 80, 90];
var newNum7 = num.includes(40);
var newNum8 = num.includes(40, 5);//从索引5的位置开始向后查找
console.log("newNum7 = " + newNum7);//true
console.log("newNum8 = " + newNum8);//false
```![](https://img2020.cnblogs.com/blog/1181810/202006/1181810-20200612013319026-1984171841.png)

分类:

技术点:

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-07
  • 2021-01-31
  • 2021-09-10
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-08-24
  • 2021-10-10
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案