TypeError:无法在字符串'BAR'上创建属性'FOO'

时间:2016-05-23 14:25:33

标签: javascript runtime-error

我们的应用中的错误(现在已修复)代码触发了此错误:

TypeError: Cannot create property 'FOO' on string 'BAR'

但Javascript完全允许在字符串变量上设置自由属性。我刚刚在Chrome控制台中尝试过它:

'BAR'.FOO = 'hello'
'BAR'['FOO'] = 'hello'

它完美无缺。

那么JS解释器会在哪个上下文中触发此错误?

原始代码用Typescript编写,然后用Babel编译。这是运行时错误。我认为这与打字稿无关,因为其他人报告类似的运行时错误,例如。 herehere

2 个答案:

答案 0 :(得分:13)

  

那么JS解释器会在哪个上下文中触发此错误?

Strict mode

'use strict';
'BAR'.FOO = 'test';

答案 1 :(得分:0)



'use strict';
var string = { name: 'bar' };
string.foo = 'hello';
console.log(string.foo + ' ' + string.name);