为了账号安全,请及时绑定邮箱和手机立即绑定

在字符串中找到最长的单词不起作用

在字符串中找到最长的单词不起作用

翻翻过去那场雪 2021-05-06 14:23:49
我应该在字符串中找到最长的单词,这是我到目前为止提出的代码。不幸的是,这似乎不起作用,我的问题是为什么?function findLongestWordLength(str) {   str.split("");  let longest = 1;  for(let i = 0; i < str.length; i++){    if (str[i].length > longest){       longest = str[i].length;    }  }  return longest;}
查看完整描述

3 回答

?
森栏

TA贡献1810条经验 获得超5个赞

您需要将字符串分割为" "。然后遍历单词并返回最大的长度。


function findLongestWordLength(str) {

  const words = str.split(" ");

  return words.reduce(

    (max, word) => (word.length > max ? word.length : max),

    0

  );

}


console.log(findLongestWordLength("hello world"));

由于使用,此解决方案更短,更清洁reduce


查看完整回答
反对 回复 2021-05-20
?
沧海一幻觉

TA贡献1824条经验 获得超5个赞

问题是第二行需要更改为, str = str.split(" ");因为字符串是不可变的,它们不能更改,需要重新分配它。


function findLongestWordLength(str) { 

  str = str.split(" ");

  let longest = 1;

  console.log(str);

  for(let i = 0; i < str.length; i++){

    if (str[i].length > longest){

       longest = str[i].length;

    }

  }

  return longest;

}


var result = findLongestWordLength("Joan Ala Valeron")

console.log(result);


查看完整回答
反对 回复 2021-05-20
  • 3 回答
  • 0 关注
  • 164 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信