无论你是JavaScript的新手还是老手,无论你是在面试工作,还是只是做常规的开发工作,你往往会发现,给定几行代码,你需要知道要输出什么以及要遵循什么。输出什么顺序。由于JavaScript是一种单线程语言,我们可以得出结论:leta='1';console.log(a);letb='2';console.log(b);然而,JavaScript实际上看起来像这样:setTimeout(function(){console.log('start')});newPromise(function(resolve){console.log('startfor');for(vari=0;i<10000;i++){i==99&&resolve();}}).then(function(){console.log('startthen')});console.log('end');//下面JS按照语句出现的顺序执行的思路,我自信的写下output://start//startfor//startthen//end在chrome上查看是完全错误的
