Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
106 views
in Technique[技术] by (71.8m points)

js some() 是同步方法吗?

some遍历数组的时候,符合某个条件跳出循环,并返回值
如果不符合在递归调用

   recursionModel(parentModel, selectMesh) {
      let flag = false
      console.log(1)
      parentModel.children.some((child, index) => {
        if (child === selectMesh) {
          // console.log('*****',flag)
          // flag = true
          console.log('return true')
          console.log(3)
          return true
        } else {
         return this.recursionModel(child, selectMesh)
        }
      })
      console.log(2)
      console.log("------------------"+flag)
      return flag

但是结果返回的是false
image.png

不知道什么原因导致的,求解??


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
recursionModel(parentModel, selectMesh) {
  return parentModel.children.some(child => {
    return child == selectMesh || this.recursionModel(child, selectMesh)
  })
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...