У меня есть функция что б вернуть самое длинное слово, но я не понимаю почему переменной word присвоили значение null

У меня есть функция что б вернуть самое длинное слово, но я не понимаю почему переменной word присвоили значение null

 function longestWord(string) {
    let str = string.split(" ");
    let longest = 0;
    let word = null;
    for (let i = 0; i < str.length; i++) {
        if (longest < str[i].length) {
            longest = str[i].length;
            word = str[i];
        }
    }
    return word;
}

Ответы (1 шт):

Автор решения: nazarpunk

Чтобы использовать оператор ?? при пустой строке или передаче в функцию/метод принимающую String|null

function longestWordWithNull(string) {
    let str = string.split(" ");
    let longest = 0;
    let word = null;
    for (let i = 0; i < str.length; i++) {
        if (longest < str[i].length) {
            longest = str[i].length;
            word = str[i];
        }
    }
    return word;
}
function longestWord(string) {
    let str = string.split(" ");
    let longest = 0;
    let word = "";
    for (let i = 0; i < str.length; i++) {
        if (longest < str[i].length) {
            longest = str[i].length;
            word = str[i];
        }
    }
    return word;
}

console.log(`null: `,longestWordWithNull('') ?? 'empty')
console.log(`empty string: `,longestWord('') ?? 'empty')

→ Ссылка