【问题标题】:Return Lastname when not definded未定义时返回姓氏
【发布时间】:2022-11-16 20:45:41
【问题描述】:
我正在研究 JavaScript 组合函数。假设我有firstname
和 lastName 作为我函数的两个参数。我希望控制台在 lastname 为 undefinded 时显示 Doe 。这是我的代码,但它打印出来未定义。任何想法?谢谢!
let name = 'John'
function greetByDefault(firstname,lastname){
return 'Hi ' + firstname +' '+ lastname + '!';
}
if (lastname === undefined){
return 'Doe';
}
console.log(greetByDefault('Jane', 'Doe'));
console.log(greetByDefault(name));
我希望控制台输出为:
嗨,简·多伊!
嗨约翰·多伊!
【问题讨论】:
标签:
javascript
function
return
undefined
【解决方案1】:
你可以使用默认值做这样的事情
let name = 'John'
function greetByDefault(firstname,lastname = 'Doe'){
return 'Hi ' + firstname +' '+ lastname + '!';
}
console.log(greetByDefault('Jane', 'Doe'));
console.log(greetByDefault(name));
console.log(greetByDefault(name, 'Smith'))
【解决方案2】:
你必须把所有东西都放在function
let name = 'John'
function greetByDefault(firstname,lastname){
if (lastname === undefined){
lastname = 'Doe';
}
return 'Hi ' + firstname +' '+ lastname + '!';
}
console.log(greetByDefault('Jane', 'Doe'));
console.log(greetByDefault(name));
【解决方案3】:
let name = 'John'
function greetByDefault(firstname,lastname=''){
if (lastname== ''){
lastname = 'Doe';
}
return 'Hi ' + firstname +' '+ lastname + '!';
}
console.log(greetByDefault('Jane', 'Doe'));
console.log(greetByDefault(name));