正在查找数组中最长的单词
Finding longest word in array
我目前正在处理coderbytes中的一个问题。我应该创建一个函数,它接收一个字符串并返回字符串中最长的单词(字符串中不会有标点符号,如果有两个大小相同的单词,函数应该返回第一个)。我找到了一个类似的问题"查找数组中最长的单词/字符串",但由于某种原因,我的代码无法工作。
var longestword = function(string){
var longest = [];
array = string.split(" ");
for(var i = 0; i <= array.length; i++){
if(array[i].length > longest.length){
longest = array[i];
}
}
console.log(longest)
}
longestword("This isnt workin for some reason")
我得到的错误是TypeError: array[i] is undefined
您的条件是i <= array.length
,但数组索引(对于像这样的非稀疏数组)是0
到array.length - 1
。只使用<
,而不是<=
。当i
是array.length
时,array[i]
得到undefined
,因为那里没有元素。
无关,但是:您的代码正成为隐式全局变量的恐怖的牺牲品,因为您从未声明array
。在array = string.split(" ");
前面添加一个var
您不能访问array[array.length]。数组是基于0的。更改<=到<。
相关文章:
- 在javascript中查找单词
- 如何查找一个单词在动态创建的html表行中出现的次数
- 如何使用jquery查找单词匹配
- 查找并替换多个单词 JavaScript
- 查找单词的一部分,但替换整个单词
- 查找表单输入的第一个单词
- 使用jQuery在p-tag中查找给定字符串的前10个单词和下10个单词
- 如何根据链接中包含的字母/单词查找并单击链接
- 使用jquery或JS查找文本区域内的所有单词位置
- 仅在字符串中查找带字母的单词
- 根据单词查找href
- 如何在jquery表中查找准确的单词
- Regex查找用方括号括起来的单个单词
- 查找Mongodb字段中出现次数最多的单词
- 在单词数组中查找相似的单词
- 查找数组中最长的单词/字符串
- 检查/查找 url 中是否有数组的任何单词
- 在javascript中查找特定单词(正则表达式)中的字符类型
- 在相同长度的单词的串联字符串中查找所有匹配项
- 为给定数量的空格查找可能数量的有意义的英语单词