es6-函数(二)
来源:互联网 发布:wow3.35数据库 编辑:程序博客网 时间:2024/06/06 09:32
参考以下博客,建议查看原博客,它更为详细;
ES6 阮一峰
rest参数
rest参数将获取函数的多余的参数,rest后面的变量是一个数组;变量会把会把参数放入到数组中;
使用方法:…变量名
function xyd(...a){ console.log(a);}xyd(1,2,3)//[1,2,3]; 当运行函数xyd后,rest参数后面的变量a,会把传入的参数1,2,3放入到一个数组中;
注意rest之后不能有其他的参数,也就是说rest参数必须是函数的参数的最后一个参数;
function xyd(...a,b){console.log(a,b);} xyd(1,2,3,4,6)
报错;
函数的length属性不包含rest参数;
扩展运算符
扩展运算符可以看作是rest参数的逆运算,它是把数组转为用逗号分隔的参数序列使用方法:…
console.log(...[1,2,3]);//1 2 3console.log(1,...[1,2,3]);// 1 1 2 3
运算符号主要用于函数调用;
function xyd(x,y){ console.log('x='+x,'y='+y)}var arr = [1,2];xyd(...arr);//3
上面的使用了运算符;当运行函数xyd是,变量arr是一个数组,使用运算符把变量arr转换为参数序列;这里结果就是3;
扩展运算符可以代替apply方法;
// ES5的写法function f(x, y, z) { console.log(x,y,z)}var args = [0, 1, 2];f.apply(null, args);// ES6的写法function f(x, y, z) { // ...}var arr= [0, 1, 2];f(...arr);
扩展运算符的应用:
合并数组;
var a = [1,2,3]; var b = [4,5,6]; var c = [7,8,9];var x = [...a,...b,...c]console.log(x);//[1, 2, 3, 4, 5, 6, 7, 8, 9]
与解构赋值结合;
var [fistn,...test] = [1,2,3,4,5,6];console.log(fistn);//1console.log(test);//[2,3,4,5,6]
注意:如果使用扩展运算符结合解构赋值使用;扩展运算符必须是最后一个,否则就会报错;
name属性
函数的name属性返回函数的名称;
function xyd(){} console.log(xyd.name);//xyd
注意函数是一个匿名函数;
ES5返回一个空的字符串;
ES6返回实际函数的名称;
var a = function (){}console.log(a.name);//如果是ES5返回 ""console.log(a.name);//如果是ES6返回 a
阅读全文
0 0
- es6-函数(二)
- ES6(二)
- es6(二)
- ES6学习笔记(二)
- es6解构赋值(二)
- 每天一点ES6(二)
- es6 之 Generator(二)
- es6学习过程(二)
- 深入浅出es6(箭头函数)
- ES6 箭头函数(=>)
- es6函数扩展(六)
- ES6 —(async 函数)
- 深入 Generator 函数(二) (Diving Deeper With ES6 Generators)
- ES6--函数
- es6-函数
- 【es6】函数
- ES6学习笔记(二)--解构赋值
- ES6笔记(二)Promise对象
- Flex下的右键菜单问题汇总
- linux系统下apache服务的启动、停止、重启命令
- docker私有仓库registry的本地搭建
- 三维重建生成密集点云osm-bundler
- 传输层概述以及传输层端口
- es6-函数(二)
- 杭电1001
- Java中的包
- 设置npm 默认安装位置
- C#中的异常捕获(try catch finally)
- Struts2理解--动态方法和method属性及通配符_默认Action
- C语言实现无头节点单链表
- Android平台使用EasyRTMP将RTSP转RTMP流进行RTMP直播推送
- 把HTML变成图片并下载到本地