小编Nic*_*man的帖子

嵌套 forEach 和 for 循环的函数不会返回 false

我正在做一个JS 练习的算法挑战。我有一个循环运行的程序,当满足条件时,该函数应该返回 false。然而,当条件满足时,返回不起作用,函数最终总是返回 true。

const isDiagonalLeftWristband = (band) => {
  band.forEach((row, y) => {
    row.forEach((item, x) => {
      for(let i = 0; (i < band[y].length - x) && (i < band.length - y); i++) {        
        if (band[y][x] !== band[y+i][x+i]) {
          console.log(false) //FALSE GETS OUTPUTTED MULTIPLE TIMES
          return false;
        }
      }
    })
  })
  return true;
}


const band3 = [
  ["A", "B", "C"],
  ["C", "Z", "B"],
  ["B", "C", "A"],
  ["A", "B", "C"]
];

console.log(isDiagonalLeftWristband(band3))
Run Code Online (Sandbox Code Playgroud)

输出:

false //from console log …
Run Code Online (Sandbox Code Playgroud)

javascript foreach for-loop return function

6
推荐指数
1
解决办法
2366
查看次数

标签 统计

for-loop ×1

foreach ×1

function ×1

javascript ×1

return ×1