第一种方法
function findLongestWordLength(str) {
let word = str.split(" ");
let maxlength = 0;
for(let i = 0; i < word.length; i++){
if(word[i].length>maxlength){
maxlength = word[i].length;
}
}
return maxlength;
}
findLongestWordLength("The quick brown fox jumped over the lazy dog");
第二种方法
function findLongestWordLength(s) {
return s.split(' ')
.reduce(function(longest, word) {
return Math.max(longest, word.length)
}, 0);
}
findLongestWordLength("The quick brown fox jumped over the lazy dog");
reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
reduce() 可以作为一个高阶函数,用于函数的 compose。
注意: reduce() 对于空数组是不会执行回调函数的。
第三种方法
function findLongestWordLength(str) {
return Math.max(...str.split(" ").map(word => word.length));
}
findLongestWordLength("The quick brown fox jumped over the lazy dog");