编写并测试一个接受字符串数组的函数,并返回数组中最长的单词

时间:2017-05-15 15:31:02

标签: javascript

函数输出的示例=> maxWord([“The”,“Albatross”,“just”,“ate”,“your”,“lunch”])=> “信天翁”

在查看其他类似问题的例子之后,我想出了这个。但它说这是一份非法的退货声明。

function maxWord(string){
	var longestWord= arr[0];
	for(var i = 0; i < str.length;i++){
		word = arr[i];
		if(word.length > longestWord.length){
			longestWord = word;
		}

		}
	}
	return word;
}

2 个答案:

答案 0 :(得分:0)

这是因为你有一个额外的大括号,你在要使用的变量中有拼写错误。

将您的代码更改为:

  function maxWord(arr){
    var longestWord= arr[0];
    for(var i = 0; i < arr.length;i++){
        word = arr[i];
        if(word.length > longestWord.length){
            longestWord = word;
        }

    }
    return longestWord;
}

这是一个工作https://jsfiddle.net/qjm4qxwy/

的小提琴

答案 1 :(得分:0)

这是es6中使用Array.reduce

的解决方案
const maxWord = (words) => {
   return words.reduce((longest, word) => {
     longest = word.length > longest.length ? word : longest;
     return longest;
   }, '')
}