学习koa2应该要了解的es6及以后的语法

       学习koa2应该要了解的es6及以后的语法

Koa2框架是这学期web课程老师介绍的一个web框架,抱着学习的态度写了这边文章。

1 关于变量的定义let和var
Let是一个块作用域 var 通俗来说var存在变量提升现象,let不存在。
2 模板字符串
var name=“lisi”
var age=10;
console.log(name+‘年龄’+age)//字符串拼接
console.log(${name}年龄是${age});//字符串模板写法
3 属性和方法的简写
var age=10;
var a={
age,
eat(){
console.log(“eat的方法”)
}

}
console.log(a.age)//age属性
a.eat();//eat方法
4 箭头函数
setTimeout(function () {
console.log(“1s后执行”)
},1000);
setTimeout(()=>{
console.log(“2s后执行了”) //用箭头函数表达上面类似的效果
},2000)
5 回调函数
function f(callback) {
setTimeout(()=>{
var i=1;
callback(i);
},1000)

}
//用回调函数获取异步方法里面的数据
f((data)=>{
console.log(data)
})
6 promise处理异步
//创建个promise对象
var promise = new Promise( (resolve,reject)=> {//resolve 成功的回调函数 reject失败的回调函数
setTimeout(()=>{
var i=1;
resolve(i);
},1000)

});
promise.then((i)=> {
console.log(i)
})
7 async await es7的语法
Async用来声明一个异步方法 await必须用在async声明的方法内部
Await等待异步方法完成,同时可以获取异步方法里面的数据。Async await基于promise的语法糖。
Async声明的方法返回是一个Promise对象

async function f() {
var i=1;
return i;
}
//在外部获取f异步方法里面的i值
async function f1() {
var d=await f();//等待f异步方法执行完成才会走下一步 同时拿到i的值
console.log(d);
}
f1()//输入看是否拿到i的值
await可以阻塞程序让异步方法顺序执行
async function f() {
console.log(“f”)
}
async function f1() {
console.log(“f1”)
}
async function f2() {
console.log(“f2”)
}
async function test() {
await f();
await f2();
await f1();
console.log(“test”)

}
test()
在这里插入图片描述

异步方法按顺序执行了。

既然async返回的是一个promise对象 还可以这么写
function f() {
return new Promise(function (resolve,reject) {
setTimeout(()=>{
var i=1;
resolve(i);
},1000)
})
}
async function f1() {
var newVar = await f();
console.log(newVar);
}
粗略说了一下es6以及es7的一些语法。里面还有许多细节还需要去了解。学习web这门课程记录一下。

发布了4 篇原创文章 · 获赞 1 · 访问量 80

猜你喜欢

转载自blog.csdn.net/qq_47103654/article/details/105586228