gpt4 book ai didi

javascript - 这个 for 循环和 if 语句是如何工作的?

转载 作者:行者123 更新时间:2023-11-29 10:12:00 26 4
gpt4 key购买 nike

试图以我自己的理解弄清楚这个函数的for循环和if语句是如何工作的。之所以如此,是因为用谷歌搜索了挑战,这段代码更短,但结果与我最初的代码相同。困惑是在最长的变量。它存储最长的单词长度大于 str.length(5) - 或者我可能是错的。由于某些无法理解的原因,language(8) 的长度并未存储在变量中,尽管 5、10 和 18 存储在变量中。

function longestWord(str) {
str = str.split(" ");
var longest = 0;
var word = null;
for (var i = 0; i < str.length; i++) {
if (longest < str[i].length) {
console.log("str = " + str[i]);
longest = str[i].length;
console.log("longest = " + longest); //What happended to 8 for language?
word = str[i];
}
}
return word;
}
console.log(longestWord("Using the JavaScript language bademnostalgiastic"));

最佳答案

所有这一切都是为了跟踪最长的单词(并将字符数存储在 longest 中)。对于每次迭代,它都会测试下一个字符串是否比当前记录的最长字符串(由 longest 确定)包含更多字符。如果是,它会存储新的字符数,因为它是新的“最长的赢家”。

这是这里发生的事情:

  • 获取一个字符串并将其拆分为单词(由空格决定)
  • 此时你有一个字符串数组,其中包含所有单独的字符串除以“”
  • 遍历数组中的所有字符串
  • 如果您正在迭代的当前字符串的字符计数器比之前任何其他字符串都多,则将当前字符计数存储在变量longest
  • 继续循环,使用上一点中的上述逻辑

所以最后你得到了实际的字符串(存储在word中)和字符数最多的单词的字符数(存储在longest中) .

关于javascript - 这个 for 循环和 if 语句是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31748647/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com