1454830
看了一篇介绍js引擎的写的很详细,下面第一篇。 js引擎超详细介绍。 从输入url到服务器返回页面,整个过程经历了什么,超完整,超详细 第二个能验证你的前端是否体系完整!!! 但,我看完还有一个疑问,链接中提到:js是单线程的,只有当所有同步任务执行完,才会执行异步任务。
我的问题:那异步方式优势是什么呢?
- 异步写法:
const fs = require('fs');
fs.writeFile('test.txt', 1234567899876543210, 'utf8', function (err) {
if (err) throw err;
else console.log('写完成');
});
for(let i = 0;i < 1000000;i++){
console.log( `hello=${i}` );
}
- 结果:文件夹
test.txt会很快创建,但之后就一直输出hello=···,直到最后才会在test.txt中写入内容,并输出写完成。 - 同步写法:
const fs = require('fs');
for(let i = 0;i < 1000000;i++){
console.log( `hello=${i}` );
}
fs.writeFileSync('test.txt', 1234567899876543210, 'utf8');
console.log('写完成');