无法访问在Node.js中更改其值的变量

时间:2019-05-24 17:50:38

标签: javascript node.js

1+2x+2x^2+4x^3/3

我想在for函数之外使用“ match”变量的更改值。我该如何实现?

2 个答案:

答案 0 :(得分:4)

您需要使用for ... of statement而不是for ... in statement来获取数组的元素而不是索引。

请看看why not use for ... in for iterating arrays

也不要忘记声明变量line

let lines = ["Hi","Bye","Gone"];
let match = false;

for (let line of lines) {
    if (line === "Bye") {
        match = true;
    }
}

console.log(match);

答案 1 :(得分:1)

in迭代对象的键,不应将其用于数组。请改用of

let lines = ["Hi","Bye","Gone"];

let match = false;

for(let line of lines){
  if(line === "Bye"){
  match = true;
  }
}

console.log(match);

通常可以帮助调试代码以查看所犯的错误。为此,您只需添加debugger,打开控制台并查看所有变量的值即可。

for(let line of lines){
   debugger;
   if(line === "Bye"){
       match = true;
   }
}

有关通常如何执行此检查的更多信息,另请参见How do I check whether an array contains a string in TypeScript?