您好,登錄后才能下訂單哦!
這篇“Nodejs新特性async和await如何使用”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“Nodejs新特性async和await如何使用”文章吧。
1.let
、const
let
:是一個(gè)塊作用域
if (true) { let a = 123; } console.log(a); // a is not defined
const
:定義常量
const PI = 3.1415926; PI = 3.15 // Assignment to constant variable. console.log(PI)
var
:全局變量
2.箭頭函數(shù)
setTimeout(() => { console.log("我被執(zhí)行了") }, 1000)
3.對(duì)象、屬性和方法的簡(jiǎn)寫(xiě)
const name = "王五" var person = { // "name": name // name: name name } console.log(person.name)
var name = "候七" var app = { name, // run: function(){ // console.log(`${this.name}在跑步`) // }, run(){ console.log(`${name}在跑步`) } } app.run()
4.模板字符串
const name = "張三" const age = 27 console.log(`${name}的年齡是${age}`)
5.Promise
主要用來(lái)處理異步,比如下面的示例
function getData(){ // 異步 setTimeout(function(){ let name = "孫悟空"; return name }, 1000) } console.log(getData()) // undefined
如果要在外面獲取異步對(duì)象執(zhí)行的結(jié)果,可以使用callback
回調(diào)方式
function getData(callback){ setTimeout(function(){ let name = "孫悟空"; callback(name); }, 1000) } getData(function(result){ console.log(result) // 孫悟空 })
Es6
中新特性Promise
方法
var p = new Promise(function(resolve, reject){ setTimeout(function(){ let name = "豬八戒"; resolve(name) }, 1000); }) p.then(function(data){ console.log(data); })
1.定義:
async
是異步的簡(jiǎn)寫(xiě),而await
可以認(rèn)為是async wait
的簡(jiǎn)寫(xiě),所以應(yīng)該很好理解:async
用于申明一個(gè)異步的fuction
,而await
用于等待一個(gè)異步方法執(zhí)行完成。
2.簡(jiǎn)單示例
1.async
方法通常應(yīng)該返回一個(gè)Promise
對(duì)象
async function test(){ // 通常異步方法中返回一個(gè)Promise對(duì)象,如果給定的是字符串,內(nèi)部也會(huì)將其轉(zhuǎn)換為Promise對(duì)象 return "hello nodejs"; } console.log(test()) // Promise {[[PromiseState]]: 'fulfilled', [[PromiseResult]]: 'hello nodejs', Symbol(async_id_symbol): 5, Symbol(trigger_async_id_symbol): 1}
async function test(){ return new Promise(function(resolve, reject){ resolve("hello nodejs") }) } console.log(test())
2.await
方法必須在async
方法中使用
async function test(){ return new Promise(function(resolve, reject){ resolve("hello nodejs") }) } // console.log(await test()) 錯(cuò)誤寫(xiě)法 async function main(){ let result = await test(); // await必須用在async方法中 console.log(result) } main();
以上就是關(guān)于“Nodejs新特性async和await如何使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。