We will see how function return function.We can call this function in two way but the second one is better.
script.js
function interviewQuestion(job){
if(job == 'designer'){
return function(name){
console.log(name + 'can you please explain what UI design is?');
}
}
else if(job == 'teacher'){
return function(name){
console.log('What subject do you teach,' + name + '?');
}
}
else{
return function(name){
console.log('Hello ' + name +'What do you do?');
}
}
}
var teacherQuestion = interviewQuestion('teacher');
teacherQuestion('John')
Alternative way
interviewQuestion('designer')('Mark');
This code is using closure
function interviewQuestion(job){
return function(name){
if(job == 'designer'){
console.log(name + 'can you please explain what UI design is?');
}
else if(job == 'teacher'){
console.log('What subject do you teach,' + name + '?');
}
else{
console.log('Hello ' + name +'What do you do?');
}
}
}
interviewQuestion('designer')('Mark')