实例分析Array.from(arr)与[...arr]到底有何不同(2)

// 上述代码可以简化为 let fs = require('mz/fs'); let path = require('path'); async function guYan() { let name = await fs.readFile(path.resolve(__dirname, './name.txt'), 'utf-8'); name = './' + name; let age = await fs.readFile(path.resolve(__dirname, name), 'utf-8'); return age; } // async 函数执行后返回一个promise // 可以使用try + catch ,但如果使用try + catch 返回的就是真 guYan().then(data=>{ console.log(data); })

处理方案比较

1.callback 多个请求并发 不好管理 链式调用 导致回调嵌套过多

2.promise优点 可以优雅的处理异步 处理错误,基于回调的,还是会有嵌套问题

3.generator + co 让代码像同步(比如dva)不能支持try catch

4.async + await 可以是异步像同步一样处理,返回一个promise 支持try catch

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/697e473b722d151072656bba11d56269.html