我找到最长单词的代码不起作用

时间:2018-10-24 11:05:14

标签: javascript

    function findLongestWord(str){
  var array = str.split(" ");
  var long = array[0].length;
  for(var i = 0; i < array.length; i++){
    if(long < array[i].length){
      long = array[i];
    }
  }
  return long;
}

findLongestWord("The quick brown fox jumped over the lazy dog");

我已经得到解决这个问题的方法;但是,我想知道为什么该程序不起作用。

3 个答案:

答案 0 :(得分:1)

将您的代码更新为关注

  • var long = array[0].length;更新为var long = array[0];商店价值
  • 在有条件的情况下,将long <更新为long.length <比较长度

 function findLongestWord(str){
  var array = str.split(" ");
  var long = array[0]; 
  for(var i = 0; i < array.length; i++){
    if(long.length < array[i].length){
      long = array[i];
    }
  }
  return long;
}

console.log(findLongestWord("The quick brown fox jumped over the lazy dog"));

答案 1 :(得分:0)

尝试一下。您必须在if块中使用long.length

function findLongestWord(str){
  var array = str.split(" ");
  var long = array[0];
  for(var i = 0; i < array.length; i++){
    if(long.length < array[i].length){
      long = array[i];
    }
  }
  return long;
}

findLongestWord("The quick brown fox jumped over the lazy dog");

答案 2 :(得分:0)

尝试这个。

findLongestWord("The quick brown fox jumped over the lazy dog");


function findLongestWord(str) {
  const arr = str.split(' ').map(e => e.length);
  const idx = Math.max(...arr);
  console.log(str.split(' ')[arr.indexOf(idx)]);
}