javascript - For 循环不迭代更正

标签 javascript

function LongestWord(sen) { 
    let arr = sen.split(' ');
    let longestWord;
    for (let i = 0; i < arr.length; i++) {
        let counter = 0;
        if (arr[i].length > counter) {
            counter = arr[i].length;
            longestWord = arr[i];
        }
    }
    return longestWord;
};

该函数的目标是循环遍历数组并找到最长的单词。我一直在查看这个,一切似乎都是正确的,但显然有些东西是错误的,但我没有看到它。

最佳答案

这是因为你在每次迭代时将 count 设置为零,即重写为

function LongestWord(sen) { 
let arr = sen.split(' ');
let longestWord;

let counter = 0;  // Moved here!!!

for (let i = 0; i < arr.length; i++) {
    if (arr[i].length > counter) {
        counter = arr[i].length;
        longestWord = arr[i];
    }
}
return longestWord;

};

关于javascript - For 循环不迭代更正,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54186263/

相关文章:

javascript - CSS 菜单仅在 IE 中隐藏在 flash 后面(SWFObject)

javascript - Safari 10 中的新输入占位符行为 - 不再通过 JavaScript 隐藏更改

javascript - 在页面加载时加载图像,CSS

javascript - 如何使链接在新的小窗口中打开?

javascript - 如何在 Postman 中断言空值?

javascript - ThreeJS 更新相机位置,使平面世界位置与 DIV 屏幕位置匹配

javascript - 打开灯箱后进度条响起

javascript - 如何从 typescript 中的数组中获取值?

javascript - 如何遍历数据表中的数组

javascript - 将生成的 HTML 传递给 JavaScript