到目前为止,这是我的代码,它似乎无法正常工作。我可以使用一些帮助。
function longestString(arr) {
var longest =0;
for (var i = 0; i < arr.length; i++) {
if (arr[i].length > longest.length) {
longest = arr[i];
}
}
}
我不确定我做错了什么。
答案 0 :(得分:1)
您可以将数组的第一个单词作为参考,并从第二个单词循环,并且不要忘记返回该单词。
此方法返回第一个找到的最长字符串。
function longestString(array) {
var longest = array[0],
i;
for (i = 1; i < array.length; i++) {
if (array[i].length > longest.length) {
longest = array[i];
}
}
return longest;
}
console.log(longestString(['abc', 'wunderbar', 'foo']));
&#13;
答案 1 :(得分:0)
function longestString(arr) {
var longest = "";
for (var i = 0; i < arr.length; i++) {
if (arr[i].length > longest.length) {
longest = arr[i];
}
}
return longest;
}
确保你找回你要找的东西。
答案 2 :(得分:0)
您可以使用reduce
获取最长的字词。
let arr = ["apple", "me", "javascript"];
let longest = arr.reduce(function(c, v) {
return c.length <= v.length ? v : c;
});
console.log(longest);
答案 3 :(得分:-1)
您可以使用javascript数组的sort
函数循环并对字符串进行排序。然后使用索引0从排序数组中获取第一个元素。
var arr = ['this','will','sort','long','texttttttttttttt'];
//get the longest text
var long = arr.sort((a,b) => b.length - a.length)[0];
console.log(long);