js 的函数参数的默认值问题
js函数参数设置默认值
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
转载于:https://www.cnblogs.com/try-better-tomorrow/p/7095827.html
js 的函数参数的默认值问题相关推荐
- C++中函数参数的默认值
文章目录 1 C++中函数参数的默认值 1.1 C++中函数参数的默认值 1.2 函数默认参数的规则 2 函数占位参数 2.1 函数占位参数 2.2 函数占位参数的意义 1 C++中函数参数的默认值 ...
- ES6新特性_ES6函数参数的默认值设置---JavaScript_ECMAScript_ES6-ES11新特性工作笔记011
然后我们再去看,es6中的函数参数的默认值的设置. 可以看到上面我写了个函数,然后 我们调用一下这个函数,并且打印了结果. 然后我们去看,如果我们调用这个函数的时候不写第3个参数 那么,可以看到得到的 ...
- 【ES6 教程】第一章 新的ES6语法04—如何设置函数参数的默认值
英文 | https://www.javascripttutorial.net 翻译 | 杨小爱 在本节教程中,我们将学习如何在 ES6 中处理 JavaScript 默认参数. TL;DR func ...
- ES6函数参数的默认值
基本用法 在ES6之前,不能直接将函数的参数指定默认值,只能采用变通的方法 function fn(x,y) {y = y || 'World'console.log(x,y) }fn('Hello' ...
- php函数默认参数不传值报错,php 关于函数参数的默认值
在写函数的时,有时我们会给参数设置默认值,如果参数默认值没有书写正确会引起警告,因此在这里整理一下正确使用方式 1.默认值必须是常量表达式,不能是诸如变量,类成员,或者函数调用等. 2.注意当使用默认 ...
- python教程:函数参数中默认值及重要警告
最有用的形式是对一个或多个参数指定一个默认值.这样创建的函数,可以用比定义时允许的更少的参数调用,比如: def ask_ok(prompt, retries=4, reminder='Please ...
- C++ 函数参数的默认值和占位参数
3.2函数占位参数 C++中函数的形参列表里可以有占位参数,用来做占位,调用函数时必须填补该位置 语法:返回值类型 函数名(数据类型){} 在现阶段函数的占位参数存在意义不大,但是后面的课程中会用到该 ...
- java 函数给默认值_函数参数的默认值
在C中,关于它们在参数列表中的位置对默认参数施加的要求如下: 必须指定给定参数的默认参数不超过一次 . 多次指定它(即使具有相同的默认值)是非法的 . 具有默认参数的参数必须在参数列表的末尾形成一个连 ...
- c语言 为参数设置默认值,js函数参数设置默认值
前端学HTTP之网关.隧道和中继 前面的话 Web是一种强大的内容发布工具.人们已经从只在网上发送静态的在线文档,发展到共享更复杂的资源,比如数据库内容或动态生成的HTML页面.Web浏览器为用户提供 ...
最新文章
- LeetCode简单题之按照频率将数组升序排序
- android java style_Android 在Java代码中设置style属性--使用代码创建ProgressBar对象
- springboot 做表白墙_学校表白墙有多羞耻??!辣眼分析数千条表白内容,原来脱单秘密在这里.......
- 基于软件开发对嵌入式开发的思考
- Android java判断字符串包含某个字符段(或替换)
- 成功解决AttributeError: module 'cv2.cv2' has no attribute 'CV_CAP_PROP_FPS'和 'CV_CAP_PROP_FRAME_WIDTH'
- dnf无限重连服务器,dnf无限连接服务器失败解决方法
- 一天学完spark的Scala基础语法教程十三、文件IO操作(idea版本)
- Matlab归一化函数(mapminmax)
- java虚拟_Java虚拟机(JVM)工作原理
- 2018 UESTC Training for Data Structures
- hive mysql互导_Hive和MySQL数据互导
- SQL Relay 0.49 发布,SQL 中间层
- cmd中python -V版本显示不出来
- docker search
- Git:如何在本地没有分支时,切换分支
- java在线聊天项目1.0版 异常处理——开启多个客户端,关闭一个客户端后,在其他客户端中再发出信息会出现异常的处理...
- MFC 获取窗口句柄
- 触摸屏组态图库 触摸屏图库 昆仑通态触摸屏专用
- html2canvas给图片添加水印,canvas 为图片添加水印