首页 >社区问答列表 >默认参数问题

默认参数问题

老师,您给的例子中:

function func2(param1, param2) {

    param1 = arguments[0] ? param1 : 600;

    param2 = arguments[1] ? param1 : 300;

}

这个三目运算符,如果我这么调用:func(0, 0,);

我传入的参数是0,其实也会被判定为失败,param1和param2就会被赋值成为600和300

  • 猪老湿
  • 猪老湿    2021-06-21 09:49:271楼

    这种方式设置参数默认值是不合适的, 其实现在js已支持默认参数了, 不需要这样麻烦(es6)

    +0添加回复

  • 回复

    老师,我的意思是想如何解决三目运算符对0和null的错误判断问题。 我在使用对象时,接触了一个链路判断:obj?.user?.first name ?? undefined 不知道这种方法是否可以应用到以上例子中!

    西伯利亚狼  作者 · 2021-06-21 10:44:47
    回复