Как знать каков - самое длинное слово цепи?

Я знаю, что делать это, должно быть, легко, но правда не, из которого способ мог бы делать это, он работал в этом и я исследовал, но остался соединенным. Я пользовался бы многим, если бы кто-то помог мне заканчивать мой код. Заранее большое спасибо.

function findLongestWord(str) {
  var pp = str.split(" ");

  return str.length;
}

findLongestWord("The quick brown fox jumped over the lazy dog");

Уже я разделил string на array, единственное, которого мне не хватает, он состоит в том, чтобы знать, как измерять каждое слово индивидуально и знать, который является той, которая измеряет больше. Сначала мне случилось использовать цикл for, чтобы идти слова в слове, но после этого я остался без идей, помоги пожалуйста.

4
задан 27.06.2016, 21:47
4 ответа

Есть несколько способов это реализовывать:

function buscaPalabraMasLarga(s) {
  palabra_mas_grande = ""
  palabras = s.replace(",", " ").split(" "); //replace usado para eliminar "," de las palabras.
  palabras.forEach(function(palabra){
  if (palabra.length > palabra_mas_grande.length){
       palabra_mas_grande = palabra
   };
  });
  return palabra_mas_grande 
};

alert( buscaPalabraMasLarga("The quick brown fox jumped over the lazy dog"));

другая форма:

function longer(palabra_mas_grande , palabra) {
  return (palabra.length > palabra_mas_grande .length) ? palabra: palabra_mas_grande ;
}

function buscaPalabraMasLarga(s) {
    var palabras = s.replace(",", " ").split(" ");
    return palabras.reduce(longer);
}
alert( buscaPalabraMasLarga("The quick brown fox jumped over the lazy dog"));

В самом деле ты это реализовывал правильно и идея, что у тебя была правильная эра, использовать цикл и сравнивать длину:

function findLongestWord(str) {
  var pp = str.replace(",", " ").split(" ");
  palabra_mas_grande = ""
  pp.forEach(function(palabra){
  if (palabra.length > palabra_mas_grande.length){
       palabra_mas_grande = palabra
   };
  });
  return palabra_mas_grande;
}
alert("la palabra más grande es: " + findLongestWord("The quick brown fox jumped over the lazy dog"));
3
ответ дан 24.11.2019, 13:59
  • 1
    @RicardoA forEach({}) показывает, что которое est и # 225; между ключами выполнять и # 225; для каждого элемента внутри Array – NaCl 27.06.2016, 20:58
  • 2
    @NaCl, спасибо! Despu и # 233; s отделения слов цепи из-за каждого слова используя forEach (), реализуй comparaci и # 243; n ища ту большей длины. – Jorgesys♦ 27.06.2016, 21:03
  • 3
    Правда они мне понравились много первый и третий opci и # 243; n, но у меня есть сомнение и #191; которого способ возможно, что ты можешь сравнивать " слово length" и " palabra_mas_grande.length" если seg и # 250; n то, что я вижу в c и # 243; я говорю, что у них нет информации внутри эти переменные, если я понимаю большинство в, как оно функционирует c и # 243; я говорю, но правда в момент изучения programaci и # 243; n мне осложняется много эта часть понимания ее l и # 243; gica c и # 243; я говорю, я это podr и # 237; схвати объяснять, пожалуйста? И большое спасибо @NaCl!!! – Ricardo A 27.06.2016, 21:15
  • 4
    @Elenasys в простой глаз, примеры poporcionados, я думаю, что они не терпят запятые. string например: "hola, mundo" == { "hola,", "mundo" } и никогда не выполняется condici и # 243; n самого длинного, или серьезного ошибочного palaba. – NaCl 27.06.2016, 21:29
  • 5
    @NaCl очень хорошая точка, agregu и # 233; modificaci и # 243; n, чтобы выносить этот случай, чем быть и # 237; в важно, большое спасибо. – Jorgesys♦ 27.06.2016, 21:44

Ты разделяешь текст на слова, пробегаешь их и сравниваешь длину.

function longestWord(text) {
  const words = text.split(/ +/);
  let longest = words[0];
  words.map((word) => {
    if(word.length > longest.length) {
      longest = word;
    }
  });
  return longest;
}

console.log(longestWord("Italia venció por dos goles a cero a España por la Eurocopa 2016"));
1
ответ дан 24.11.2019, 13:59

Такое что таким образом?

function findLongestWord(str) {

  var length = 0, longestWord = "";
  var pp = str.split(" ");

  for(var i = 0 ; i < pp.length; i++)
    {
      if(pp[i].length > length){
          length = pp[i].length;
          longestWord = pp[i];
       }

    }

  return longestWord;
}

var b = findLongestWord("The quick brown fox jumped over the lazy dog");

alert(b);

http://jsbin.com/xucewaqefo/edit?html,js,output

2
ответ дан 24.11.2019, 13:59

В меня я я функционирую asГ-:

function findLongestWordLength(str) {
  let orden = str.split(' ').map((a) => a.length)
  let largo = Math.max(...orden)
  return largo
};
console.log(findLongestWordLength("The quick brown fox jumped over the lazy dog"));
0
ответ дан 24.11.2019, 13:59
  • 1
    Твой ответ - хороший, но не весь мир entenderí в в первую из-за qué ты funcionó – Ruslan López 24.07.2019, 16:25