先看这段 代码,打开 console,你会看到一共输出两次,一次是 thead 未声明的时候,会输出 undefined,这里没有一点问题,但是接下来的输出,是紧接声明语句的:
thead = document.createElement('tr'); console.info(thead);
这时候变量 thead 仅仅是声明了,不应该有值,但是第二次的输出,居然出现了该函数运行结束时,变量 thead 应该获得的所有值,请问这是为什么呢,Javascript 难道在预编译期对变量进行初始化?可这是获得了该函数最后得出的值啊,想不明白,求解,希望大家也用 代码 给我演示一下。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/389904
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.