JS函数多个参数默认值指定方法分析


Posted in Javascript onNovember 28, 2016

本文实例讲述了JS函数多个参数默认值指定方法。分享给大家供大家参考,具体如下:

函数有一个参数时,以往这样定义(参数为p1):

function mfun(p1){ … }

当需要为p1设定一个默认值时

function mfun(p1){
if(p1===undefined) p1=5; //默认值设为5
…
}

当函数需要2个参数时,以前习惯这样写

function mfun(p1,p2){…}

后来发现完全不需要这样写,js函数甚至不需要在括弧内预设参数名,可以用一下方式传入任意多个参数自动适配,当没有被定义时,这些未被赋值参数被调用时值为 undefined

以下例子示范了一个2个参数的js函数

function mFun(){
 var p1 = arguments[0] ? arguments[0] : -1; //设置参数p1默认值为-1
 var p2 = arguments[1] ? arguments[1] : ‘ABC'; //p2默认值 ‘ABC'
…
}

以下是一些错误示范:

需要2参数,第二个为可选参数时定义

function mFun(p1){...}
function mFun(p1,p2){...}

*这种写法,mFun(p1)会被下面的函数覆盖掉,当只传入一个参数时,p2会提示undefined

funciton mfun(p1,p2='xxx'){...}

这是php习惯.. =___=b..

再看一个例子:

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 相关文章推荐
学习并汇集javascript匿名函数
Nov 25 Javascript
ExtJs使用总结(非常详细)
Mar 22 Javascript
javascript 使td内容不换行不撑开
Nov 29 Javascript
YUI模块开发原理详解
Nov 18 Javascript
extjs 分页使用jsp传递数据示例
Jul 29 Javascript
Javascript基础教程之比较null和undefined值
May 16 Javascript
文本框只能输入数字的实现方法(兼容IE火狐)
Jun 25 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
Sep 06 Javascript
Vue服务器渲染Nuxt学习笔记
Jan 31 Javascript
ionic2中使用自动生成器的方法
Mar 04 Javascript
vant(ZanUi)结合async-validator实现表单验证的方法
Dec 06 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
Jul 15 Javascript
ajax级联菜单实现方法实例分析
Nov 28 #Javascript
jQuery select自动选中功能实现方法分析
Nov 28 #Javascript
JS两种类型的表单提交方法实例分析
Nov 28 #Javascript
简单实现JavaScript图片切换效果
Nov 28 #Javascript
jQGrid动态填充select下拉框的选项值(动态填充)
Nov 28 #Javascript
JS调用打印机功能简单示例
Nov 28 #Javascript
完全深入学习Bootstrap表单
Nov 28 #Javascript
You might like
精致的人儿就要挑杯子喝咖啡
2021/03/03 冲泡冲煮
中篇:安装及配置PHP
2006/12/13 PHP
相对路径转化成绝对路径
2007/04/10 PHP
PHP 透明水印生成代码
2012/08/27 PHP
php通过exif_read_data函数获取图片的exif信息
2015/05/21 PHP
ThinkPHP5+Layui实现图片上传加预览功能
2018/08/17 PHP
PHP explode()函数用法讲解
2019/02/15 PHP
用php实现分页效果的示例代码
2020/12/10 PHP
javascript 动态添加表格行
2006/06/22 Javascript
JS模拟酷狗音乐播放器收缩折叠关闭效果代码
2015/10/29 Javascript
AngularJS进行性能调优的7个建议
2015/12/28 Javascript
javascript实现延时显示提示框特效代码
2016/04/27 Javascript
JS简单测试循环运行时间的方法
2016/09/04 Javascript
基于jQuery实现图片推拉门动画效果的两种方法
2017/08/26 jQuery
AngualrJs清除定时器遇到的坑
2017/10/13 Javascript
jQuery中each方法的使用详解
2018/03/18 jQuery
JS实现的简单tab切换功能完整示例
2019/06/20 Javascript
JS数组方法slice()用法实例分析
2020/01/18 Javascript
基于Element的组件改造的树形选择器(树形下拉框)
2020/02/27 Javascript
[00:53]2015国际邀请赛 中国区预选赛一触即发
2015/05/14 DOTA
Python字典操作详细介绍及字典内建方法分享
2018/01/04 Python
python装饰器深入学习
2018/04/06 Python
python实现C4.5决策树算法
2018/08/29 Python
Python后台管理员管理前台会员信息的讲解
2019/01/28 Python
纯CSS3实现3D旋转书本效果
2016/03/21 HTML / CSS
孕妇内衣和胸罩:Cake Maternity
2018/07/16 全球购物
Reformation官网:美国女装品牌
2018/09/14 全球购物
乐高官方旗舰店:LEGO积木玩具
2019/04/06 全球购物
有影响力的品牌之家:Our Social Collective
2019/06/08 全球购物
继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?
2015/11/18 面试题
母亲80寿诞答谢词
2014/01/16 职场文书
平安工地建设方案
2014/05/06 职场文书
珍惜资源保护环境的建议书
2014/05/14 职场文书
商务日语专业的自荐信
2014/05/23 职场文书
2014年教师德育工作总结
2014/11/10 职场文书
晚会开幕词范文
2016/03/04 职场文书