Я знаю, что сделать это должно быть легко, но я действительно не знаю, как я мог это сделать, я работал над этим, я исследовал, но я застрял. Мне бы очень помогло, если бы кто-нибудь помог мне закончить мой код. Заранее большое спасибо.
function findLongestWord(str) {
var pp = str.split(" ");
return str.length;
}
findLongestWord("The quick brown fox jumped over the lazy dog");
Я уже разделил строку на массив, единственное, что мне нужно, это знать, как измерять каждое слово по отдельности и знать, какое из них измеряет больше. Сначала я думал использовать цикл for для перехода от слова к слову, но после этого у меня закончились идеи, пожалуйста, помогите.
Есть несколько способов сделать это:
Другой путь :
На самом деле вы делали это правильно, и ваша идея была правильной, используйте цикл и сравните длину:
Как насчет этого пути?
http://jsbin.com/xucewaqefo/edit?html, js, вывод
Вы разбиваете текст на слова, перебираете их и сравниваете длину.
Я ответил на вопрос , который изначально был очень похож на этот. Затем этот вопрос был отредактирован и существенно изменен, поэтому мой ответ не имеет никакого смысла. Однако здесь он может быть полезен, поэтому я делюсь им здесь:
Есть интересная статья с тремя способами получить самое длинное слово . Вы можете выбрать тот, который вы предпочитаете.
В ссылке есть прокомментированные фрагменты кода для каждого метода. Я изменил его, чтобы он возвращал слово, если вы хотите, он также может возвращать длину.
1. Использование цикла
for
2. Использование
sort()
3. Использование
reduce()
У меня это сработало так:
Это самый короткий путь, я думаю.