js函数参数设置默认值的一种变通实现方法


Posted in Javascript onMay 26, 2014

php有个很方便的用法是在定义函数时可以直接给参数设默认值,如:

function simue ($a=1,$b=2){ 
return $a+$b; 
} 
echo simue(); //输出3 
echo simue(10); //输出12 
echo simue(10,20); //输出30

但js却不能这么定义,如果写function simue(a=1,b=2){}会提示缺少对象。

js函数中有个储存参数的数组arguments ,所有函数获得的参数会被编译器挨个保存到这个数组中。于是我们的js版支持参数默认值的函数可以通过另外一种变通的方法实现,修改上例:

function simue (){ 
var a = arguments[0] ? arguments[0] : 1; 
var b = arguments[1] ? arguments[1] : 2; 
return a+b; 
} 
alert( simue() ); //输出3 
alert( simue(10) ); //输出12 
alert( simue(10,20) ); //输出30
Javascript 相关文章推荐
用方法封装javascript的new操作符(一)
Dec 25 Javascript
精选的10款用于构建良好易用性网站的jQuery插件
Jan 23 Javascript
JS操作图片(增,删,改) 例子
Apr 17 Javascript
ext combobox动态加载数据库数据(附前后台)
Jun 17 Javascript
ext中store.load跟store.reload的区别示例介绍
Jun 17 Javascript
js文件包含的几种方式介绍
Sep 28 Javascript
jquery插件uploadify多图上传功能实现代码
Aug 12 Javascript
JavaScript事件处理程序详解
Sep 19 Javascript
jQuery实现动画、消失、显现、渐出、渐入效果示例
Sep 06 jQuery
Vue 事件处理操作实例详解
Mar 05 Javascript
Vue 进阶之路(三)
Apr 18 Javascript
js实现移动端吸顶效果
Jan 08 Javascript
单元选择合并变色示例代码
May 26 #Javascript
jquery实现的一个文章自定义分段显示功能
May 23 #Javascript
用JavaScript实现一个代码简洁、逻辑不复杂的多级树
May 23 #Javascript
ie 7/8不支持trim的属性的解决方案
May 23 #Javascript
JQuery 控制内容长度超出规定长度显示省略号
May 23 #Javascript
jquery重复提交请求的原因浅析
May 23 #Javascript
jquery仿搜索自动联想功能代码
May 23 #Javascript
You might like
js下函数般调用正则的方法附代码
2008/06/22 PHP
PHP 飞信好友免费短信API接口开源版
2010/07/22 PHP
php多文件上传下载示例分享
2014/02/20 PHP
推荐dojo学习笔记
2007/03/24 Javascript
JS之小练习代码
2008/10/12 Javascript
JavaScript 异步调用框架 (Part 2 - 用例设计)
2009/08/03 Javascript
html中的input标签的checked属性jquery判断代码
2012/09/19 Javascript
利用javascript实现禁用网页上所有文本框,下拉菜单,多行文本域
2013/12/14 Javascript
JavaScript返回上一页的三种方法及区别介绍
2015/07/04 Javascript
D3.js中data(), enter() 和 exit()的问题详解
2015/08/17 Javascript
javascript实现3D切换焦点图
2015/10/16 Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
2016/05/20 Javascript
详谈JavaScript的闭包及应用
2017/01/17 Javascript
深入对Vue.js $watch方法的理解
2017/03/20 Javascript
jquery实现静态搜索功能(可输入搜索文字)
2017/03/28 jQuery
windows下更新npm和node的方法
2017/11/30 Javascript
解决Vue开发中对话框被遮罩层挡住的问题
2018/11/26 Javascript
jQuery+vue.js实现的多选下拉列表功能示例
2019/01/15 jQuery
详解小程序中h5页面onShow实现及跨页面通信方案
2019/05/30 Javascript
详解django模板与vue.js冲突问题
2019/07/07 Javascript
Python内置函数Type()函数一个有趣的用法
2015/02/18 Python
Python实现完整的事务操作示例
2017/06/20 Python
Python中实现最小二乘法思路及实现代码
2018/01/04 Python
使用Python写一个小游戏
2018/04/02 Python
Django跨域请求CSRF的方法示例
2018/11/11 Python
python实现ftp文件传输功能
2020/03/20 Python
keras 如何保存最佳的训练模型
2020/05/25 Python
python中常见错误及解决方法
2020/06/21 Python
Parfume Klik丹麦:香水网上商店
2018/07/10 全球购物
Feelunique中文官网:欧洲最大化妆品零售电商
2020/07/10 全球购物
PHP如何设置和取得Cookie值
2015/06/30 面试题
网络技术专业推荐信
2014/02/20 职场文书
公益广告宣传方案
2014/02/28 职场文书
导航工程专业自荐信
2014/09/02 职场文书
企业挂职心得体会
2014/09/10 职场文书
2015年小学数学教师工作总结
2015/05/20 职场文书