为什么我的代码对于 110 >= 62 返回 false?但适用于之前的迭代。 JavaScript

问题描述 投票:0回答:1
  for(index = 0; index < (bookmarkArray.length); index++){
    let tempParentId = bookmarkArray[index].parentId
    //console.log('RealIndex: '+index+'\nTempFolderID: '+tempFolderId+'\nFolderContentID: '+FolderContentId+'\nindexURLboolean: '+(bookmarkArray[index].url == undefined));
    if(tempParentId >= tabberId){ // filtering through array if in tabberid or tempfolderid
      if(bookmarkArray[index].url == undefined){ // if no url means it is a main folder
          globalHTMLID = FolderHTMLId
          HTMLAppear(index);
          buttonEventListner(FolderHTMLId, index);}
      else if(tempParentId == tempFolderId){ // check if it is within the new folder
           HTML_creates_a_forDiv(index);} // index should not be
      else{
            HTML_creates_other_a(result)} // single save (no folder)
        }         
    else{
        console.log("indexParentId: "+(tempParentId)+'\nIs '+tempParentId+' >= '+tabberId+'\nCheckBoolean: '+(bookmarkArray[index].parentId >= tabberId))
      }
    }

tabberId 变量是 62 并且永远不会改变。 tempParentId 迭代并完美工作,直到索引 110。此时 tempParentId >= tabberid 返回 false。 110 >= 62 返回 false?我迷失了,我觉得我错过了一些明显的东西,但找不到它。

我被困在这个问题上一段时间,不确定错误在哪里,并惊讶地发现问题如此简单,但完全没有意义。我向文件夹中添加了更多内容,以获得parentId 121..这也返回了 false(121 >= 62 返回了 false)。达到 110 之前的所有文件夹均有效,可能是 100 以上的任何文件夹?我在 110 之前的文件夹是 94。可能是语法问题,但我看不到它。

javascript for-loop logic
1个回答
0
投票

读取为字符串。 Number.parseInt(variable) 解决了一切。谢谢你。

© www.soinside.com 2019 - 2024. All rights reserved.