console.log("before");const user =getUser(1);
console.log("Go: user", user);
console.log("after");//callback//promise//asyn/awaitfunctiongetUser(id){setTimeout(()=>{
console.log("Get user from database");return{ id: id, username:"helloworld"};},2000);}// 输出:// before// Go: user undefined// after// Get user from database
console.log("before");const user =getUser(1, user =>{getRepositories(user, repos =>{
repos.map(repo =>{
console.log(repo);});});});
console.log("after");//callback//promise//asyn/awaitfunctiongetUser(id, callback){setTimeout(()=>{
console.log("Get user from database");callback({ id: id, username:"helloworld"});},2000);}functiongetRepositories(username, callback){setTimeout(()=>{
console.log("get Repositories from database");callback([1,2,3]);},1000);}// 输出// before// after// Get user from database// get Repositories from database// 1// 2// 3
console.log("before");getUser(1).then(res =>{
console.log(res);//promise //asyn/awaitfunctiongetUser(id){returnnewPromise((resolve, reject)=>{setTimeout(()=>{
console.log("Get user from database");resolve({ id: id, username:"helloworld"});},2000);});}functiongetRepositories(username, callback){setTimeout(()=>{
console.log("get Repositories from database");callback([1,2,3]);},1000);}