es6

1 箭头函数

箭头函数 是 函数的一种简写形式,使用括号来包裹参数,跟随一个  =>  ,紧接着是函数体。

var add = function(x,y){
  return x + y
}

var add = (x,y) => x + y

var add = (x,y) => {
  return x + y
}
console.log(add(4,7))

2 对象和数组结构

arr = ["jink",23,"shanxi"]

let [name,age,add] = arr

console.log(name,age,add) 


ob = {x:4,y:5,z:6}

let {x:x,y:y,z:z} = ob

console.log(x,y,z)  //输出4 , 5  , 6

 

3 字符串中渲染变量

var name = "jinkang"
var cen = `welcome ${name}`  (反分号,TAB 上面那个)
console.log(cen)  //输出 welcome jinkang

4 使用 for of 和 for in 遍历一个迭代器

for (let per of stus){
  console.log(per) //zs ls ww
}

for (let per in stus){
  console.log(per) //0 1 2 
  console.log(stus[per]) //zs ls ww
}

5 Promise

let promise = new Promise(function(resolve,reject){
  console.log("promise up");
  resolve()
})

promise.then(function(){
  console.log("resolveed");
})

console.log("hi");  
输出: promise up
hi
resolveed

上面代码中,Promise 新建后立即执行,所以首先输出的是Promise up。然后,then方法指定的回调函数,将在当前脚本所有同步任务执行完才会执行,所以resolved最后输出。

var request = require("request")

const options = {
    url: "http://mail.zhonghuass.cn/hello",
    method: "POST",
    headers:{
        "content-type": "text/html;charset=utf-8",
    }
}

var pro = new Promise(function(resolve,reject){
request(options,(err,res,body) => {
    if(err){
        reject("wrong")
    }
    resolve(body)
})
})

pro.then(function(value){
console.log('OK');
console.log(value)
},function(error){
console.log(error);
})

then  方法 的 作用是为 Promise 实例添加状态改变时间时的回调函数。then 方法的第一个参数是 resolved 状态的回调函数,第二个参数(可选)是 reject 状态的回调函数。

6 Generator

function* f() {

  yield 5;
  yield 23;
  yield 211;
  yield 12;
}

var a = f()

console.log(a.next())    
console.log(a.next())
console.log(a.next())
输出

{value:5,done:false}
{value:23,done:false}
{value:211,done:false}

for...of循环可以自动遍历 Generator 函数时生成的Iterator对象,且此时不再需要调用next方法
for (let a of f()){
    console.log(a)
}  输出//5   23   211  12 
原文地址:https://www.cnblogs.com/jkklearn/p/7593151.html