javascript - 如何检查数组是否至少有一个负值?

Ton*_*Bai 0 javascript arrays

我创建了一个整数数组,并想知道它是否有一个或多个负值.

我不想创建一个for()循环并检查数组中的每个元素是正还是负,因为我只想返回一次(例如:我不希望我的函数"返回false;"一百万次) .

我考虑的一个选项是将数组中的每个值乘以其倒数的绝对值,因此我得到一个1或-1的数组(或者如果值为0则未定义)然后我可以将第二个数组中的所有值相加看看它是否等于数组的长度.

但是,这种方法的问题在于它不考虑1/0,而且也很繁琐.我想知道是否有更快的方法来检查数组是否包含至少一个负值.

- 来自初学JavaScript程序员

mad*_*kst 8

Array.prototype.some如果数组中的项与给定条件匹配,您可以利用哪个将返回true或false.如果条件匹配元素,它也将停止检查剩余值:

let values = [1, 4, 6, -10, -83];
let hasNegative = values.some(v => v < 0);
Run Code Online (Sandbox Code Playgroud)