2016-11-30 73 views
2

我正在使用freecodecamp.com,任務是查找字符串中最長的單詞,我收到此錯誤,但無法找出原因我也看過其他項目。查找字符串任務中最長的單詞時發生錯誤(javascript)

"TypeError: Unable to get property 'length' of undefined or null reference"

它是指copy[i].length

function findLongestWord(str) { 
 
    var copy = str; 
 
    copy = copy.split(' '); 
 
    var longest = 0; 
 
    for (var i = 0;i < copy.length;i++); 
 
    { 
 
    if (longest < copy[i].length) 
 
     { 
 
     longest = copy[i].length; 
 
     } 
 
    } 
 
    return longest; 
 
} 
 
findLongestWord("The quick brown fox jumped over the lazy dog");

回答

9

您在for循環之後有一個分號。

function findLongestWord(str) { 
 
    var copy = str; 
 
    copy = copy.split(' '); 
 
    var longest = 0; 
 
    for (var i = 0;i < copy.length;i++) 
 
    { 
 
    if (longest < copy[i].length) 
 
     { 
 
     longest = copy[i].length; 
 
     } 
 
    } 
 
    return longest; 
 
} 
 
var l = findLongestWord("The quick brown fox jumped over the lazy dog"); 
 
console.log('Longest = ' + l);

+0

這太令人沮喪了,謝謝! – JohnT

0

是的,你有一個分號;您的環線

function findLongestWord(str) { 
 
     
 
     var copy = str.split(' '); 
 
     var longest = 0; 
 
     var index =0; 
 
     for (var i = 0;i < copy.length;i++) 
 
     { 
 
     if (longest < copy[i].length) 
 
      { 
 
      longest = copy[i].length; 
 
      index=i; 
 
      } 
 
     } 
 
     console.log("longest word is " +copy[index]); 
 
     return longest; 
 
    } 
 
    
 
    console.log('longest word length = '+findLongestWord("The quick brown fox jumped over the lazy dog"));

jsfiddle鏈接在這裏。

相關問題