在使用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已经支持强类型语言的方式直接给定初值。