Search code examples
javascriptstringfunctionsplitprompt

Prompt for 5 words then display longest word javascript


I am trying to prompt for a 5 words then separate the words to find the longest word then display the longest word using java script. I am able to get anything to work, it wont even prompt for the words.

function longestWord(string) {
    var word = prompt("Enter a string of at least 5 words separated by spaces:") ;
    var str = string.split(" ");
    var longest = 0;
    str.forEach(function(str) {
        if (longest < str.length) {
            longest = str.length;
            word = str;
        }
    });
    return word;
    document.write("The longest word is " +word+ ".") ;
}
longestWord(string)

Solution

  • You are calling longestWord with string as a parameter, which is undefined.

    <script>
    function longestWord() {
        string = prompt("Enter a string of at least 5 words separated by spaces:") ;
        var str = string.split(" ");
        var longest = 0;
        str.forEach(function(str) {
            if (longest < str.length) {
                longest = str.length;
                word = str;
            }
        });
        document.write("The longest word is " +word+ ".") ;
    }
    longestWord();
    </script>