ECMAScript6|ECMAScript6 扩展运算符
【扩展运算符】spread
作用:序列化 对象序列化是指将对象的状态转换为字符串
通过扩展运算符实现assign操作
var obj1 = {a:1};
var obj2 = {b:2};
var obj3 = {...obj1,...obj2};
console.log(obj3);
//Object { a: 1, b: 2 }
rest参数(...) 扩展运算符
//1.提取数据
function a(){
var arr = [...arguments];
console.log(arr) //Array(3) [ 1, 2, 3 ]
}
a(1,2,3);
//2.剩余参数
function b(a,...r){
console.log(r);
//Array(3) [ 2, 3, 4 ]
}
b(1,2,3,4);
function fn3(a,...arr){
console.log(a);
//1
console.log(arr);
//Array(4) [ 2, 3, 4, 5 ]
}
fn3(1,2,3,4,5);
解构
1.数组数据解构
var [a,b,c,d] = [1,2,3,4];
console.log(c);
//3
2.对象数据解构
var person = (function(){
var sex= 'man';
function showit(){
console.log('he is a '+sex );
}
return {
sex,showit
}
})();
var {sex,showit} = person;
console.log(sex);
//man
console.log(showit());
// he is a man
模板字符串, 字符拼接以及换行更加方便 简洁
var txt = '我是个学生';
var txt2 = '自动化控制专业';
var str = `
- ${ txt}
- ${ txt2 }
`;
函数的扩展
1.函数默认值
function showIt(num){
var num = num || 10;
console.log(num);
//10
};
showIt(0);
//数字0解析为false,所以永远走或的另一测,永远为10function showIt(num=10){
console.log(num);
};
showIt(0);
//0添加了默认值后,可以正常输出0
showIt();
//10 不写,则走默认值
【ECMAScript6|ECMAScript6 扩展运算符】3.函数简写
var obj = {fn(){
//something
}}
//同等于
var obj = {
fn: function fn() {}
};
推荐阅读
- Shell-Bash变量与运算符
- Unity和Android通信系列文章2——扩展UnityPlayerActivity
- PHP|PHP 扩展开发检测清单(扩展开发必读)
- 二、Dart基础语法|二、Dart基础语法 (二)运算符 类
- 知识扩展-SQL查询基础
- laravel|laravel 添加扩展包步骤
- JavaScript其他运算符
- C++运算符重载的方法详细解析
- bgo:|bgo: 具备扩展性的 go 程序构建工具
- JS中 &&、|| 和 & 、| 的使用