js的es6的特性

ES6特性

lass Person{
  constructor(name) {
    this.name = '小明';
  }
  console() {
    console.log(this.name);
  }
}
const man = new Man('小明');
man.console(); // 小明

模块化

js代码 

// 模块 变量
export let a= 3;
// 模块 方法
export function b(){
    console.log("hello")
}

引入

 箭头函数

const func = (a, b) => a + b;
func(1, 2); // 3

 函数参数默认值

function fn(name= "小明"){ // ...}

 模板字符串

const age= 12;
const str = `my age is ${age}`;

 解构赋值

let a = 1, b= 2;
[a, b] = [b, a]; // a 2  b 1

 延展操作符

let a=[1,2,3];
let b=[3,4,5];
let c = [...a,...b]
console.log(c)

 对象属性简写

const name='小米',
const obj = { name };

Promise

Promise.resolve().then(() => { console.log(2); });
console.log(1);
// 先打印 1 ,再打印 2

 ES7特性

Array.prototype.includes() 

[1].includes(1); // true

 指数操作符

2**10; // 1024

 ES8特性

async/await 

async getData(){
    const res = await api.getTableData(); // await 异步任务
    // do something    
}

Object.values()

Object.values({a: 1, b: 2, c: 3}); // [1, 2, 3]

 

 

你可能感兴趣的:(js,javascript,es6,前端)