阮一峰教程:http://es6.ruanyifeng.com/#do...
// a.mjsimport {bar} from './b';console.log('a.mjs');console.log(bar);export let foo = 'foo';
// b.mjsimport {foo} from './a';console.log('b.mjs');console.log(foo);export let bar = 'bar';
上面代码中,a.mjs加载b.mjs,b.mjs又加载a.mjs,构成循环加载。执行a.mjs,结果如下。
$ node --experimental-modules a.mjsb.mjs ReferenceError: foo is not defined
以上是教程内容。
我在浏览器环境下实测是undefined,let不是没有变量声明提升吗?为什么会是undefined而不是not defined?我自己有两个猜测,但是都不太肯定,恳请指教一下
慕沐林林
相关分类