js遍历数组some()⽅法
题⽬描述:在⼀个⼆维数组中(每个⼀维数组的长度相同),每⼀⾏都按照从左到右递增的顺序排序,每⼀列都按照从上到下递增的顺序排序。请完成⼀个函数,输⼊这样的⼀个⼆维数组和⼀个整数,判断数组中是否含有该整数。⼀个简单的数组遍历题。
答案:js语⾔:
functionFind(target, array){returnarray.some(arr => arr.some(e => e === target))}
解释:
外⾯的some⽅法是对每个⼀维进⾏遍历,⾥⾯的some⽅法是对每个⼀维的每⼀个元素进⾏遍历,判断是否严格等于要的target元素,复杂度为n⽅。
=>是es6语法中的arrow function
例:(x) => x + 6 相当于
function(x){
return x + 6;
};
那么e => e === target表⽰返回严格等于target的元素e
some()⽅法⽤于检测数组中的元素是否满⾜指定条件
some() ⽅法会依次执⾏数组的每个元素:
如果有⼀个元素满⾜条件,则表达式返回true , 剩余的元素不会再执⾏检测。
如果没有满⾜条件的元素,则返回false。
注意: some() 不会对空数组进⾏检测。
注意:
注意: some() 不会改变原始数组。
注意:
这⾥⼩记⼀下some以及类似的every,对⽐⼀下其他遍历⽅法
some() 有⼀个元素满⾜条件,即返回true
const a = [1, 2, 3]console.log(a.some(v => v > 5)) //falseconsole.log(a.some(v => v < 2)) //true
every() 所有元素满⾜条件,即返回true
const a = [1, 2, 3]console.log(a.every(v => v < 5)) //trueconsole.log(a.every(v => v < 2)) //false
filter() 返回包含满⾜条件元素的数组
const a = [1, 2, 3]
console.log(a.filter(v => v < 3)) // [1, 2] map() 返回⼀个新数组
const a = [1, 2, 3]
console.log(a.map(v => v + 5)) // [6, 7, 8] forEach() 仅循环,⽆返回值,本质上相当于for const a = [1, 2, 3]
a.forEach(v => console.log(v)) // 1 2 3
js 二维数组
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论