我们的应用中的错误(现在已修复)代码触发了此错误:
TypeError: Cannot create property 'FOO' on string 'BAR'
但Javascript完全允许在字符串变量上设置自由属性。我刚刚在Chrome控制台中尝试过它:
'BAR'.FOO = 'hello'
'BAR'['FOO'] = 'hello'
它完美无缺。
那么JS解释器会在哪个上下文中触发此错误?
原始代码用Typescript编写,然后用Babel编译。这是运行时错误。我认为这与打字稿无关,因为其他人报告类似的运行时错误,例如。 here和here
答案 0 :(得分:13)
答案 1 :(得分:0)
'use strict';
var string = { name: 'bar' };
string.foo = 'hello';
console.log(string.foo + ' ' + string.name);