默认参数允许在函数定义时为参数指定默认值,当未传参或传入undefined时生效。例如function greet(name = "游客")会输出“你好,游客!”;支持表达式、函数调用及前参引用,常用于配置对象、可选字段等场景,提升代码健壮性与可读性。
在 JavaScript 中,函数参数如果没有传值,会默认为 undefined,这可能导致程序出错或产生非预期结果。使用默认参数可以有效避免这类问题,让函数更健壮、更易用。
默认参数允许你在定义函数时为参数指定一个默认值,当调用函数时没有传递该参数或传的是 undefined,就会使用这个默认值。
语法非常简单,直接在参数后面用等号赋值即可:
function greet(name = "游客") {greet(); // 输出:你好,游客!
greet("小明"); // 输出:你好,小明!
默认参数特别适合处理配置对象、可选输入和工具函数。
function createPost(title, au
thor, published = true, tags = []) {
return { title, author, published, tags };
}
createPost("JavaScript 入门", "张三");
// 返回:
// {
// title: "JavaScript 入门",
// author: "张三",
// published: true,
// tags: []
// }
虽然默认参数使用简单,但有几个关键点需要注意:
function logTime(msg, time = new Date().toLocaleString()) {
console.log([${time}] ${msg});
}
logTime("页面加载完成");
// 输出:[2025/4/5 10:23:45] 页面加载完成
还可以利用前一个参数作为后一个参数的默认值:
function multiply(a, b = a) {multiply(5); // 返回 25(相当于 5 * 5)
multiply(5, 2); // 返回 10
基本上就这些。合理使用默认参数能让你的函数更灵活,减少条件判断,提升代码可读性。不复杂但容易忽略的小技巧,值得掌握。