Вы перезаписываете прежнее значение элемента.Чтобы получить обе строки, вы можете просто добавить к ней оба новых значения с помощью +=
.
. Я изменил все выходные данные на значения с разрывом строки.
Затем я изменил оператор return
выполнить досрочный выход, что означает, что вам не нужны операторы else
из-за оператора return
, который выходит из функции.
function interviewQuestion(job) {
return function(name) {
if (job === 'painter') {
document.getElementById("demo1").innerHTML += name + ' how do you paint images?' + '<br>';
return;
}
if (job === 'salesman') {
document.getElementById("demo2").innerHTML += name + ' how do you sale things?' + '<br>';
return;
}
if (job === 'singer') {
document.getElementById("demo3").innerHTML += name + ' how do you sing?' + '<br>';
return;
}
document.getElementById("demo0").innerHTML += name + ' what position are you interested in?' + '<br>';
};
}
interviewQuestion('painter')('Lucy');
interviewQuestion('salesman')('Richard');
interviewQuestion('singer')('Juliana');
interviewQuestion('window washer')('Pepe');
interviewQuestion('bootshiner')('Bob');
<h1>Section 5: Advanced JavaScript: Objects and Functions</h1>
<h3>Practice on Closures:</h3>
<p id="demo1"></p>
<p id="demo2"></p>
<p id="demo3"></p>
<p id="demo0"></p>
Просто для полноты вы можете переместить всю информацию в объект и определить функцию по умолчанию для неизвестных заданий.
function interviewQuestion(job) {
var data = {
painter: name => document.getElementById("demo1").innerHTML += name + ' how do you paint images?' + '<br>',
painter: name => document.getElementById("demo1").innerHTML += name + ' how do you paint images?' + '<br>',
salesman: name => document.getElementById("demo2").innerHTML += name + ' how do you sale things?' + '<br>',
singer: name => document.getElementById("demo3").innerHTML += name + ' how do you sing?' + '<br>',
default: name => document.getElementById("demo0").innerHTML += name + ' what position are you interested in?' + '<br>'
};
return data[job] || data.default;
}
interviewQuestion('painter')('Lucy');
interviewQuestion('salesman')('Richard');
interviewQuestion('singer')('Juliana');
interviewQuestion('window washer')('Pepe');
interviewQuestion('bootshiner')('Bob');
<h1>Section 5: Advanced JavaScript: Objects and Functions</h1>
<h3>Practice on Closures:</h3>
<p id="demo1"></p>
<p id="demo2"></p>
<p id="demo3"></p>
<p id="demo0"></p>