async函式 asynchronous 非同步的

2021-09-16 18:50:04 字數 1220 閱讀 2950

async函式(asynchronous 非同步的)

同步:

console.log(1);

console.log(2);

console.log(3);

console.log(4);

//依次列印1 2 3 4;

非同步 ajax 檔案讀取io操作:

console.log(1);

console.log(2);

settimeout(function(),3000);

console.log(3);

console.log(4);

//先列印1 2 3 4,隔三秒後列印3000;

async函式返回的是resolve狀態的promise物件:

async function fn()

let result=fn();

console.log(result);//列印:promise 。

promise 物件:

let p = new promise(function(resolve,reject));

p.then(function(data));

async函式裡面的返回值傳遞給then方法:

async function fn()

let p1 = fn();

p1.then(function(data));

async函式用來處理非同步:

function one(),3000);})}

function two(),2000);})}

//await只能出現在非同步函式裡面,

async function shunxu()

let p3 = shunxu();

p3.then(r=>);

//先列印start,三秒後列印兩次one_3000,列印完one_3000然後隔兩秒列印兩次two_2000和結束;

Generator函式與async函式的區別介紹

generator函式 generator函式是es2015提供的非同步解決方案,與普通函式有很大的不同 特徵 1 在function關鍵字後面跟乙個 號 2 在函式體內部使用yield表示式作為乙個狀態 generator函式返回乙個遍歷器,可通過for of方法遍歷每個狀態 用法 執行gener...

async wait 多個async函式巢狀

1.假如函式 async function a a 會等到customfun 的函式體內所有的 執行結束,再執行console.log a async function customfun ms res 777 t console.log promise then result console.lo...

async函式的實現原理 例項

generator是實現async函式的關鍵 function helloworldgenerator var hw helloworldgenerator hw.next hw.next hw.next hw.next 複製 let fs require fs function readfile ...