JavaScript 函数参数默认值
传统写法:
function fn(param) {let p = param || 'hello';console.log(p);
}
上方代码中,函数体内的写法是:如果 param 不存在,就用 hello
字符串做兜底。这样写比较啰嗦。
ES6 写法:(参数默认值的写法,很简洁)
function fn(param = 'hello') {console.log(param);
}
在 ES6 中定义方法时,我们可以给方法里的参数加一个默认值(缺省值):
方法被调用时,如果没有给参数赋值,那就是用默认值;
方法被调用时,如果给参数赋值了新的值,那就用新的值。
如下:
var fn2 = (a, b = 5) => {console.log('haha');return a + b;
};
console.log(fn2(1)); //第二个参数使用默认值 5。输出结果:6console.log(fn2(1, 8)); //输出结果:9
提醒 1:
我们来看下面这段代码:
let x = 'smyh';
function fn(x, y = x) {console.log(x, y);
}
fn('vae');
注意第二行代码,我们给 y 赋值为x
,这里的x
是括号里的第一个参数,并不是第一行代码里定义的x
。打印结果:vae vae
。
如果我把第一个参数改一下,改成:
let x = 'smyh';
function fn(z, y = x) {console.log(z, y);
}
fn('vae');
此时打印结果是:vae smyh
。
let fn2 = (a, b = 5, c) => {console.log(a, b, c)console.log(a + b + c)
};fn2(1, 5)fn2(1, 8)//1 5 undefined
//NaN
//1 8 undefined
//NaN
JavaScript 函数参数默认值相关推荐
- ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map
根据视频进行整理 [https://www.bilibili.com/video/BV1uK411H7on?p=1] 视频资源(百度网盘): 链接:[https://pan.baidu.com/s/1 ...
- C++ 笔记(13)— 函数(函数声明、函数定义、函数调用[传值、指针、引用]、函数参数默认值、函数重载)
每个 C++ 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数. 1. 函数声明 函数声明告诉编译器函数的名称.返回类型和参数.函数声明包括以下几个部分: ret ...
- C++之函数参数默认值
C++之函数参数默认值 1.参数默认值的指定方式 在 C++ 中,可以在函数声明时为参数提供一个默认值.这样在函数调用时,如果没有提供函数参数值,则使用默认值. e.g. 在函数声明时,指定参数默认值 ...
- c++函数参数默认值设置
c++函数参数默认值设置 1,函数参数默认值在函数声明的参数列表上定义,函数定义不变: #include <iostream>using namespace std; int add(in ...
- ES6——函数参数默认值
ES6 之前,不能直接为函数的参数指定默认值,ES6 允许为函数的参数设置默认值,即直接写在参数定义的后面. function fun(x = 'Hello'){console.log(x); } f ...
- JavaScript中实现函数重载和参数默认值
2019独角兽企业重金招聘Python工程师标准>>> 参数默认值是指在调用函数时,若省略了某个实参,函数会自动为该参数分配一个默认值,使得函数调用的方便性和灵活性大大提高. 举个例 ...
- ES6新特性之函数优化-参数默认值
函数优化 在ES6中,对函数的操作做了优化,使得我们在操作函数时更加的便捷. 函数参数默认值 在ES6以前,我们无法给一个函数参数设置默认值,只能采用变通写法: function add(a , b) ...
- php函数的默认值,php函数指定默认值方法的小例子
php函数指定默认值方法的小例子 本节内容: php函数指定默认值 在php编程中,为自定义函数设定默认值,当用户调用该函数时,如果不给参数指定值,参数会用默认值顶替. 例1, 复制代码 代码如下: ...
- ES6函数参数的解构赋值,以及2种设置参数默认值方法的区别
文章目录 1. 函数参数的解构赋值方式 2. 函数参数解构设置参数默认值 1. 方法1 2. 方法2 3. 总结 1. 函数参数的解构赋值方式 下面代码中,函数add的参数表面上是一个数组,但在传入参 ...
- JavaScript 函数参数
JavaScript 函数参数 JavaScript 函数对参数的值没有进行任何的检查. 函数显式参数(Parameters)与隐式参数(Arguments) functionName(paramet ...
最新文章
- 防火墙iptables之常用脚本
- 交换机定时自动备份配置文件的方法
- Spring5源码 - 04 invokeBeanFactoryPostProcessors 源码解读_1
- 鲶鱼效应:为什么要适当的贷款?
- 注意指针修饰符的准确含义
- java线程并发库之--线程同步工具Exchanger的使用
- Tecplot如何保存frame style 并调用frame style
- easyUI 日期控件修改...
- 今晚直播丨用高效的Oracle性能诊断工具,让运维工作轻松起来!
- 数据结构与算法 汉诺塔问题和列车车厢重排问题
- HDU_1874_畅通工程续_最短路问题
- knockout + require + director 构建单页面程序(director)
- 无源蜂鸣器c语言编程,无源蜂鸣器+LED
- 我分析了虎嗅网5万篇文章,发现这些秘密
- java big5_BIG5编码表
- Java中对象的逃逸分析
- Java后端开发之JSON入门
- Linux系统管理、系统安全命令概述
- JS实现数字自动转换人民币金额(自动格式化输入的数字/千位分隔符)
- Android studio下载插件失败问题