我在一些 Javascript 代码中有一个 for 循环,但似乎无法弄清楚为什么它没有执行。我有一些 console.log 语句,我试图在其中查看变量是否捕获了我需要它们捕获的内容。但是,当我运行代码时,我没有看到 console.log 命令的任何输出。我在这里缺少什么吗?请参阅下面的 Javascript 代码:
var strArry = [];
for(var i=0; i<obj[0].srcLanguageSentence.text; i++)
{
// create variables representing substrings of the Source language Sentence
var s1 = text.substring((obj[i].srcLanguageSentence.roles[i].beginOffset - obj[i].srcLanguageSentence.roles[i].beginOffset),(obj[i].srcLanguageSentence.roles[i].beginOffset - 1));
var s2 = text.substring(obj[i].srcLanguageSentence.roles[i].beginOffset,obj[i].srcLanguageSentence.roles[i].endOffset);
var s3 = text.substring(obj[i].srcLanguageSentence.roles[i].endOffset,obj[i].srcLanguageSentence.text.length);
strArry.push(s1)
strArry.push(s2)
if(i == obj[0].srcLanguageSentence.roles.length)
{
strArry.push(s3);
}
text = s3;
console.log("s1: " + s1);
console.log("s2: " + s2);
console.log("s3: " + s3);
console.log(s1+s2+s3);
}
最佳答案
你的问题是你在 for 循环中的条件语句:
i < obj[0].srcLanguageSentence.text;
你说只要 i 小于 obj[0].srcLanguageSentence.text,这个循环就应该运行,这看起来是错误的。
我猜你要么想为 obj 中的每个对象运行 for 循环(因为你在代码中使用 obj[i])?如果是这样,请这样写:
for (var i=0; i < obj.length; i++)
或者,如果是为了文本的长度:
for (var i=0; i < obj[0].srcLanguageSentence.text.length; i++)
关于javascript - 在javascript中执行for循环不成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31285203/