用 creator 3.8.6 新建了一个空的工程
我写了一段简单例子用来测试
test.ts
let strs = {
a: ‘a’,
b: ‘b’,
c: ‘c’
}
let fns = {}
for (let key in strs) {
let localName = key
fns[localName] = function () {
console.log(localName)
}
}
for (let e in fns) {
fnse
}
export { }
发现编辑器打印的结果是 c c c
但是 浏览器运行的结果是 a b c
对比 editor 和 preview 的js 文件
editor 会将 var 声明提前,preview 并不会,所以 localName 作用域并不相同
这是默认设置的原因么?为什么会存在这种差异呢?
对于 editor 和 preview 不同环境需要注意什么来避免这种问题么?