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 相关文章推荐
利用Dojo和JSON建立无限级AJAX动态加载的功能模块树
Mar 24 Javascript
javascript 树控件 比较好用
Jun 11 Javascript
Javascript this指针
Jul 30 Javascript
extjs 学习笔记(一) 一些基础知识
Oct 13 Javascript
jquery实现的淡入淡出下拉菜单效果
Aug 25 Javascript
JS读取XML文件数据并以table形式显示数据的方法(兼容IE与火狐)
Jun 02 Javascript
React操作真实DOM实现动态吸底部的示例
Oct 23 Javascript
React Form组件的实现封装杂谈
May 07 Javascript
jQuery实现为table表格动态添加或删除tr功能示例
Feb 19 jQuery
vue项目中在外部js文件中直接调用vue实例的方法比如说this
Apr 28 Javascript
JavaScript实现京东放大镜效果
Dec 03 Javascript
使用react+redux实现计数器功能及遇到问题
Jun 02 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
PHP应用JSON技巧讲解
2013/02/03 PHP
PHP中的流(streams)浅析
2015/07/02 PHP
PHP MYSQL简易交互式站点开发
2016/12/27 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
Laravel 添加多语言提示信息的方法
2019/09/29 PHP
javascript 遍历验证所有文本框的值
2009/08/27 Javascript
jQuery EasyUI 中文API Layout(Tabs)
2010/04/27 Javascript
有道JavaScript监听浏览器的问题
2010/06/23 Javascript
比较新旧两个数组值得增加和删除的JS代码
2013/10/30 Javascript
Javascript中this的用法详解
2014/09/22 Javascript
浅谈jquery事件处理
2015/04/24 Javascript
浅谈Javascript实现继承的方法
2015/07/06 Javascript
利用CSS3在Angular中实现动画
2016/01/15 Javascript
基于Bootstrap实现tab标签切换效果
2020/04/15 Javascript
Angularjs 依赖压缩及自定义过滤器写法
2017/02/04 Javascript
Vue实现百度下拉提示搜索功能
2017/06/21 Javascript
判断iOS、Android以及PC端的示例代码
2018/11/15 Javascript
原生JS实现相邻月份日历
2020/10/13 Javascript
[02:35]DOTA2超级联赛专访XB 难忘一年九冠称王
2013/06/20 DOTA
Python sys.path详细介绍
2013/10/17 Python
Python使用bs4获取58同城城市分类的方法
2015/07/08 Python
用python打印1~20的整数实例讲解
2019/07/01 Python
最新2019Pycharm安装教程 亲测
2020/02/28 Python
基于plt.title无法显示中文的快速解决
2020/05/16 Python
pycharm 代码自动补全的实现方法(图文)
2020/09/18 Python
台湾饭店和机票预订网站:Expedia台湾
2016/08/05 全球购物
日本网路线上商品代购服务:转送JAPAN
2016/08/05 全球购物
会员卡清退活动总结
2014/08/27 职场文书
省委召开党的群众路线教育实践活动总结大会报告
2014/10/21 职场文书
2014年安置帮教工作总结
2014/12/11 职场文书
2015年度个人教学工作总结
2015/05/20 职场文书
运动会开幕式主持词
2015/07/01 职场文书
2016新年感言
2015/08/03 职场文书
2016大学军训通讯稿
2015/11/25 职场文书
2019财务毕业实习报告
2019/06/27 职场文书
python 学习GCN图卷积神经网络
2022/05/11 Python