Правильно собрать строку в цикле используя присваивание со сложением +=

Пытаюсь написать простой код:

(можно скопировать в браузере в консоль и посмотреть результат)

let tpl
for(let i=0; i<10; i++){
    tpl += `
    <p>Строка ${ i }</p>
`
}
console.log(tpl)

При использоваении оператора присвоения со сложением первой строчкой выведеться undefined, что логично

Додумался только до добавления условия:

let tpl
for(let i=0; i<10; i++){
    if(i==0){
        tpl = `
        <p>Строка ${ i }</p>`
    }else{
        tpl += `
        <p>Строка ${ i }</p>`
    }
}
console.log(tpl)

Но мне кажется можно как то проще это сделать, явно лишнее условие. Как правильно сделать это?


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

Автор решения: Алексей Шиманский

Всё гораздо проще. Надо просто инициализировать переменную начальным значением. В данном случае пустой строкой. Потому что объявление переменной let tpl без инициализации - автоматом присваивает переменной значение undefined.

let tpl = '';

for (let i = 0; i < 10; i++){
    tpl += `<p>Строка ${ i }</p>`
}

console.log(tpl);

→ Ссылка