在数组 arr 中,查找值与 item 相等的元素出现的所有位置
function findAllOccurrences(arr, target) {
// var a1 = []
// arr.forEach((items,index,arr) => {
// items === target ? a1.push(index) : 0 //或者
// items !== target || a1.push(index) // 这里引用||运算规则
//})
// return a1
// var a2 = []
// var index = arr.indexOf(target)
// while (index !== -1) {
// a2.push(index)
// index = arr.indexOf(target, index + 1)
// }
// return a2
//lastIndexOf方法的第二的参数是fromIndex,指开始检索的位置,而不是结束检索的位置,
//所以和indexOf有点区别
var a3 = []
var lastIndex = arr.lastIndexOf(target)
while (lastIndex !== -1) {
a3.push(lastIndex)
arr.splice(lastIndex,1)
lastIndex = arr.lastIndexOf(target)
}
return a3
}
以上a1,a2,a3分别针对三种方法