js中设置参数默认值问题

2016-12-16  本文已影响145人  此鹿不通

在使用js时有时会遇到需要给相应函数的参数设置默认值的问题,如果按照强类型语言的方式直接给定初值会发现报错。如下:

<script>
  function test(id=0)
     {alert(id);}
</script>

js不能这样这样传进默认参数。那么应该怎么做呢?js已经给我们提供了一个内置属性arguments。具体可参考http://www.cnblogs.com/lwbqqyumidi/archive/2012/12/03/2799833.html 此处只写出简单用法。

举例说明:

<script>
  function test(id,name,url)
     {
           if(!arguments[2]) id = "123";//设置id默认值为123
           if(!arguments[3]) name = "null";//设置name默认值为null
      }
</script>

简单来说,js这个内置对象arguments将函数的参数存为一个类似数组的对象,所以可以对arguments进行操作从而对参数赋默认值。

更新:当然现在es6已经支持强类型语言的方式直接给定初值。

上一篇 下一篇

猜你喜欢

热点阅读