Javascript返回函数的含义

Mar*_*049 0 javascript return

我理解return基本上终止一个功能.但不知何故,在这种情况下,我不确定哪个回归实际上正在完成一个功能.

var THRESHOLD = 12;
var v = [5, 2, 16, 4, 3, 18, 20];
var res;

res = v.some(function(element, index, array) {
  console.log('element:', element);
  if (element >= THRESHOLD) {
    return true; //#1
  }

  return false; // #2
});
console.log('res:', res);
Run Code Online (Sandbox Code Playgroud)

假设它在v [0] = 5处迭代,它跳过if(){}并继续前进return false //2,为什么在#2之后返回,该函数仍然保持循环?

raf*_*elc 5

该功能不会继续运行.它被多次调用,因为你在迭代数组

  • @XiaoQu不,否则它怎么能找到你的"真实"值?[来自MDN](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/some#Description):*some()为数组中的每个元素执行一次回调函数直到它找到一个回调返回真值*的地方.返回`true`会停止迭代 (2认同)