JavaScript函数默认参数在调用时动态求值,未传值或传undefined时生效,支持表达式和函数调用,提升代码灵活性与可读性。

JavaScript函数中设置默认参数非常实用,能提升代码的健壮性和可读性。当调用函数时未传入对应参数或传入值为undefined,默认参数会生效。
基本语法
在函数定义时,直接为参数赋值即可设置默认值:
function functionName(param1 = defaultValue1, param2 = defaultValue2) {
// 函数体
}
示例:
function greet(name = “游客”, age = 18) {
console.log(`你好,${name},你今年${age}岁。`);
}
greet(); // 输出:你好,游客,你今年18岁。
greet(“小明”); // 输出:你好,小明,你今年18岁。
greet(“小红”, 25); // 输出:你好,小红,你今年25岁。
默认参数的求值时机
默认参数是在函数调用时动态求值的,不是定义时。这意味着你可以使用之前定义的参数作为后续参数的默认值。
立即学习“Java免费学习笔记(深入)”;
function greet(fullName, greeting = `你好,${fullName}`) {
console.log(greeting);
}
greet(“张三”); // 输出:你好,张三
注意:后面的参数可以引用前面的参数,但不能反过来。
使用表达式和函数作为默认值
默认值不限于原始值,也可以是表达式甚至函数调用。
function getTime() {
return new Date().toLocaleTimeString();
}
function log(message, time = getTime()) {
console.log(`[${time}] ${message}`);
}
log(“系统启动”); // 输出类似:[10:30:15] 系统启动
每次调用函数时都会重新执行getTime(),确保获取的是当前时间。
注意事项
理解以下几点有助于避免常见问题:
只有传入undefined时才会使用默认值,传入null、空字符串或false不会触发 默认参数不会出现在arguments对象中(严格模式下) 不能访问函数内部尚未初始化的参数(暂时性死区)
基本上就这些。合理使用默认参数能让函数更灵活,减少重复代码。不复杂但容易忽略细节。
以上就是JavaScript默认参数设置_javascript函数定义的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1540461.html
微信扫一扫
支付宝扫一扫