【发布时间】:2015-12-18 07:30:26
【问题描述】:
我正在研究最长的单词 coderbyte,昨晚我尝试从这个问题中解决一些问题 - Longest word in sentence code not working
这是我的代码:
function LongestWord(sen) {
var sentence = sen.split(" ");
console.log(sentence);
var word = null;
var longest = 0;
for(var i=0; i<=sentence.length; i++){
var words = sentence[i];
console.log(words);
if(longest<words.length){
longest = sentence[i].length;
word = sentence[i];
}
}
// code goes here
return word;
}
LongestWord("This is a test sentence!");
当我调用该函数时,我收到此错误 - 我在提交之前使用 jsbin 运行我的代码。
"TypeError: Cannot read property 'length' of undefined
at LongestWord (mezijosuxu.js:11:24)
at mezijosuxu.js:21:1
at https://static.jsbin.com/js/prod/runner-3.35.5.min.js:1:13616
at https://static.jsbin.com/js/prod/runner-3.35.5.min.js:1:10537"
当我运行 for 循环时,我正在控制台记录句子数组和数组中的单词,但是我是否在 if 语句中定位了错误的东西,或者我是否需要使用正则表达式来去除标点符号和非-alpha 字符以及仅针对每个单词?我还需要另一个 for 循环吗?
【问题讨论】:
-
替换为:for(var i=0;i
-
上面写着
mezijosuxu.js:11。您需要检查第 11 行。
标签: javascript function