查找数组中最长的字符串

时间:2018-09-19 18:08:09

标签: javascript arrays string

我应该在数组中找到最长的字符串,但是找不到我的代码有什么问题。尝试在Visual Studio Code中进行调试时,某些操作不起作用,只是无法分离。请帮我解决问题!

代码:

let arr = ["Orebro", "Sundsvall", "Hudriksvall", "Goteborg"];

function long_string(arr){
   let longest="";
   for (let i=0;i<arr.length;i++){
      if (arr[i]>longest){
         longest=arr[i];
      }
   } 
   return longest;
}

long_string(arr)

有人可以发现错误吗?

3 个答案:

答案 0 :(得分:4)

您需要检查项目的长度和存储的最长字符串。

in_array ($table, $tables)

还有另一个提示,您可以将第一项用作if (arr[i].length > longest.length) { // ^^^^^^^ ^^^^^^^ 的起始值,并从索引longest开始迭代。

1

答案 1 :(得分:3)

您可以使用reduce方法,并在每次迭代中检查当前字符串的长度。

let arr = ["Orebro", "Sundsvall", "Hudriksvall", "Goteborg"];
let result = arr.reduce((r, e) => r.length < e.length ? e : r, "");
console.log(result)

答案 2 :(得分:1)

另一种解决方法是排序并获取第一项

{{1}}