js函数参数默认值
以前的写法,利用短路原则来写:
function haosy(name,age){ name=name||'小郝'; age=age||21; alert('读者你好,我是作者'+name+',芳龄'+age+'岁。'); } 调用: 情况一: haosy('王八蛋',20) 输出:读者你好,我是作者王八蛋,芳龄20岁。 情况二: haosy('王八蛋') 输出:读者你好,我是作者王八蛋,芳龄21岁。 情况三: haosy(null,22) 输出:读者你好,我是作者小郝,芳龄22岁。 情况四: haosy(); 输出:读者你好,我是作者小郝,芳龄21岁。
现在我们使用ES6给出的默认值写法。
1.基本用法
function haosy(name='小郝',age=21){ console.log('读者你好,我是作者'+name+',芳龄'+age+'岁。'); } haosy(); 输出:读者你好,我是作者小郝,芳龄21岁。 haosy('王八蛋',20); 输出:读者你好,我是作者王八蛋,芳龄20岁。 haosy('王八蛋') 输出:读者你好,我是作者王八蛋,芳龄21岁。 //TODO...
2.与解构赋值默认值结合
function haosy({name,age=21}){ console.log('读者你好,我是作者'+name+',芳龄'+age+'岁。'); } haosy({}); 输出:读者你好,我是作者小郝,芳龄21岁。 haosy({name:'王八蛋'}); 输出:读者你好,我是作者王八蛋,芳龄21岁。 haosy({name:'王八蛋',age:20}); 输出:读者你好,我是作者王八蛋,芳龄20岁。 //TODO...
与基本用法的区别:
优点:这种写法在传入多个形参时可以不按顺序写,会方便;
缺点:如果不传入参数的时候,每次都要 haosy({}) 要写 {} 比较麻烦,因此,我们可以再设置一次默认值。
3.双重默认值
function haosy({name='小郝',age=21}={}){ console.log('读者你好,我是作者'+name+',芳龄'+age+'岁。'); } haosy(); 输出:读者你好,我是作者小郝,芳龄21岁。 haosy({name:'王八蛋'}); 输出:读者你好,我是作者王八蛋,芳龄21岁。 haosy({name:'王八蛋',age:20}); 输出:读者你好,我是作者王八蛋,芳龄20岁。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现