js函数的默认参数
2012-03-16 10:02
337 查看
function fun(a,b) { return a+b; }
当我们运行fun() , fun(1) , fun(1,2) fun(1,2,3)时均可以成功! 只是fun(1)和fun()返回的是‘NaN’
这可能在其他语言会报错误,可js就不一样了。相反,当给函数提供默认参数的时候 ,js反倒会报错 eg:function fun(a=1,b=2){return a+b} 将会提示错误
我们可以这样给js提供默认参数
function fun(a,b) { var a = a || 1; var b = b || 2; return a+b; }
这时可以解决默认参数问题,但是如果运行fun(0,3)时将返回不正确的结果
这时我们可以这样定义函数
function fun(a,b) { var a = typeof a === 'undefined' ? 1 : a; var b = typeof b === 'undefined' ? 2 : b; return a+b; }
这时可以完美的解决js中默认参数的问题
相关文章推荐
- js中对函数设置默认参数值的3种方法
- js中对函数设置默认参数值的3种方法
- [js高手之路] es6系列教程 - 函数的默认参数详解
- js定义函数和默认参数
- js中对函数设置默认参数值的3种方法
- js中对函数设置默认参数值的3种方法
- [js高手之路] es6系列教程 - 函数的默认参数详解
- js中对函数设置默认参数值的3种方法
- js中对函数设置默认参数值的3种方法
- js中对函数设置默认参数值的3种方法
- js中获取函数的参数
- C语言可变长参数函数与默认参数提升
- JS中setInterval、setTimeout不能传递带参数的函数的解决方法
- 一个简单的js获取url参数的函数
- C语言可变长参数函数与默认参数提升(转)
- 【JS】函数参数的爱恨情仇
- 虚函数的默认参数 ——关于条款38的测试
- JS中函数参数的传递
- 绝不重定义继承的函数默认参数