async/await - 3.把任意类型的函数转成async风格
1.在函数表达式中使用async/await
const fetch = require('node-fetch')
const getZhihuColumn = async (id) => {
const url = `https://zhuanlan.zhihu.com/api/columns/${id}`
const response = await fetch(url)
return await response.json()
}
(async () => {
const creator = await getZhihuColumn('qianduanzhidian')
console.log(`name:${creator.name}`)
console.log(`description:${creator.description}`)
})()
在顶级作用域下,使用async关键字,是非法的,需要声明一个匿名函数
2. 在类的函数中使用async/await
class APIClent {
async getZhihuColumn(id) {
const url = `https://zhuanlan.zhihu.com/api/columns/${id}`
const response = await fetch(url)
return await response.json()
}
}
(async () => {
const client = new APIClent()
const creator = await client.getZhihuColumn('qianduanzhidian')
console.log(`name:${creator.name}`)
console.log(`description:${creator.description}`)
})()