博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
004. ES6之函数的扩展
阅读量:6250 次
发布时间:2019-06-22

本文共 1206 字,大约阅读时间需要 4 分钟。

hot3.png

1. 函数参数的默认值

ES6 允许为函数的参数设置默认值,

function log(x, y = 'World') {  console.log(x, y);}log('Hello') // Hello Worldlog('Hello', 'China') // Hello Chinalog('Hello', '') // Hello// 1. 参数变量是默认声明的,所以不能用 let 或 const 再次声明function foo(x = 5) {  let x = 1; // error  const x = 2; // error}// 2. 使用默认值时,函数不能有同名参数// 3. 参数默认值不是传值的,而是每次都重新计算默认值表达式的值let x = 99;function foo(p = x + 1) {  console.log(p);}foo() // 100x = 100;foo() // 101

2. 与结构赋值默认值结合使用

function foo({x, y = 5}) {  console.log(x, y);}foo({}) // undefined 5foo({x: 1}) // 1 5foo({x: 1, y: 2}) // 1 2foo() // TypeError: Cannot read property 'x' of undefined// 提供函数默认值function foo({x, y = 5} = {}) {  console.log(x, y);}foo() // undefined 5

3. 参数默认值的位置

// 例一function f(x = 1, y) {  return [x, y];}f() // [1, undefined]f(2) // [2, undefined])f(, 1) // 报错f(undefined, 1) // [1, 1]// 例二function f(x, y = 5, z) {  return [x, y, z];}f() // [undefined, 5, undefined]f(1) // [1, 5, undefined]f(1, ,2) // 报错f(1, undefined, 2) // [1, 5, 2]

如果传入 undefined ,将触发该参数等于默认值, null 则没有这个效果

function foo(x = 5, y = 6) {  console.log(x, y);}foo(undefined, null)// 5 null

4. 函数的 length 属性 是指没有指定默认值的参数个数

5. name 属性

6. 箭头函数

7. 双冒号运算符

转载于:https://my.oschina.net/u/3563169/blog/1861243

你可能感兴趣的文章
win7读取linux硬盘序列号,Windows 下获取硬盘序列号
查看>>
linux音频设备接口,OSS--跨平台的音频接口简介
查看>>
华为网卡linux驱动安装,Linux Nvidia显卡驱动安装
查看>>
linux sql撤销,取消请求的sql语句
查看>>
c语言学习 二维指针,二维数组和指针(C语言)
查看>>
图像压缩算法构造最优解c语言,C语言与程序设计第12章递归.ppt
查看>>
c语言飞机源代码,C语言写的飞机源码
查看>>
C语言 如果某个数大于10 归零,C:当指针实际指向某个东西时,函数继续接收归零指针(示例代码)...
查看>>
c c 语言项目实战 pdf,[计算机]C实战项目.pdf
查看>>
linux中solr创建core,Solr6.6 创建core
查看>>
android的边框阴影,android 自定义shape 带阴影边框效果
查看>>
android centos 的编码,Centos 安装 android sdk
查看>>
反编译android 状态栏沉浸,手把手教你傻瓜式开启状态栏沉浸模式
查看>>
android l job scheduler api,Android JobScheduler API
查看>>
html css 扑克牌桌面,纯CSS实现画扑克牌
查看>>
html5资源分享,12款实用的HTML5干货分享
查看>>
n9 android模拟器,Android软件将兼容诺基亚N9
查看>>
html防替换资源,html前端进行资源重载及刷新资源
查看>>
html5css做星星的形状,css评分效果的星星示例技术分享
查看>>
html实现放大镜效果,利用jquery实现放大镜特效
查看>>