function findLongestWordLength(str) {
var res = str.split(" ");
var ar = [];
for (let i = 0; i <
res.length; i++) {
let leength = res[i].length;
ar.push(leength);
//ar is the array of the lengths of the word in the string.
}
var largest = 0;
for (let i = 0; i <=
largest; i++) {
if (ar[i] > largest) {
var largest = ar[i];
} //this loop is detecting largest number from the array ar.
}
return largest;
}
console.log(findLongestWordLength("What if we try a super-long word such as otorhinolaryngology"));
我要从字符串中获得最大的字长,
这适用于最大字符串,但不适用于此核心响应数组“如果我们尝试超长的单词,例如耳鼻喉科,该怎么办”
您有
var largest = 0;
for (let i = 0; i <= largest; i++) {
您正在将ar
从索引0循环到第一个将largest
设置为大于当前索引的索引。使用i < ar.length
代替:
function findLongestWordLength(str) {
var res = str.split(" ");
var ar = [];
for (let i = 0; i < res.length; i++) {
let leength = res[i].length;
ar.push(leength);
//ar is the array of the lengths of the word in the string.
}
var largest = 0;
for (let i = 0; i < ar.length; i++) {
if (ar[i] > largest) {
var largest = ar[i];
} //this loop is detecting largest number from the array ar.
}
return largest;
}
console.log(findLongestWordLength("What if we try a super-long word such as otorhinolaryngology"))
但是将映射的字长扩展到Math.max
可能会更容易:
const findLongestWordLength = str => Math.max(
...str.split(' ').map(word => word.length)
);
console.log(findLongestWordLength("What if we try a super-long word such as otorhinolaryngology"))
尝试在空白处分割输入,然后按长度对数组进行排序:
var input = "What if we try a super-long word such as otorhinolaryngology";
var parts = input.split(/\s+/);
parts.sort(function(a, b) { return b.length - a.length; });
console.log(parts[0]);