2019年的es6特性

es6 数据结构趋势

  • map成本最低
  • 在数据结构中优先考虑Map、Set,放弃数组和Object 

lambda表达式和箭头函数

  • 2019 年 我知道 java1.8 的lambda表达式,ES6中新增的箭头操作符=>便有异曲同工之妙。
  • 它简化了函数的书写。操作符左边为输入的参数,而右边则是进行的操作以及返回的值Inputs=>outputs

class 保留字-> 关键字

  • ES6中添加了对类的支持,引入了class关键字【class,extends super 在JavaScript中一直是保留字】

字面量对象新写法

  • 对象字面量被增强了,写法更加简洁与灵活。
  • Object.assign(target,source,source2); 用于合并对象
  • String 扩展
  • Number 扩展
  • Boolean 扩展
export default {
    title:'',
    say(){},
    async say(){}, // await + Promise
    listen:()=>{},
} 

ES6中允许使用反引号 ` 来创建字符串

//将这个数字输出到console
console.log(`your num is ${Math.random()}`);

解构赋值

  • 自动解析数组或对象中的值。比如若一个函数要返回多个值,常规的做法是返回一个对象
[name,,age]=['wayou','male','secrect'];//数组解构

函数

  • 参数默认值,不定参数,拓展参数
  • 不定参数是在函数中使用命名参数同时接收不定数量的未命名参数[arguments]
  • 拓展函数允许传递数组或者类数组直接做为函数的参数而不用通过apply
//参数默认值
function sayHello2(name='developler'){
    //var name=name||'dude'; 
    console.log(`Hello ${name}`);
}


//将所有参数相加的函数
const add = (...x)=>{
    //reduce() 方法接收一个函数作为累加器
    return x.reduce(function(m,n){return m+n});
}

ES6中新引入的for of循环功能相似 提升循环效率

var someArray = [ "a", "b", "c" ];
 
for ((value) of someArray) {
    console.log(value);//输出 a,b,c
}

参考链接

https://blog.csdn.net/weixin_33858249/article/details/91941626

http://blog.sina.com.cn/s/blog_c112a2980102xqcu.html  js 数据结构   array  object  map  set

你可能感兴趣的:(es6)