为什么改变" const" Angular 2中的值不会出错?

时间:2016-04-22 01:13:08

标签: typescript angular

代码很简单:

const num = 1;
num = 2;
console.log('num', num);

JSFiddle中,浏览器控制台将显示以下错误,这很棒:

  

未捕获的TypeError:分配给常量变量。

然而,Angular 2中的相同代码不会产生任何错误,最后num等于 2 。请参阅此Plunker

为什么要改变" const" Angular 2中的值不会出错?这是一个错误吗?感谢

1 个答案:

答案 0 :(得分:1)

在线TypeScript编译器默认目标低于'es6',因此生成的代码constvar替换为兼容性,但如果您将config.js更改为:

  typescriptOptions: {
    emitDecoratorMetadata: true,
    target: 'es6'
  }

编译器将输出const,您将看到错误。

相关问题