Angularjs 像对象一样的角度常数采用相同的参考

Angularjs 像对象一样的角度常数采用相同的参考,angularjs,Angularjs,为什么我要定义一个常量对象,比如 app.constant('TEST', { title: 'Hello' }); 我在控制器里做这个 var x = TEST; x.title = 'Hello World'; console.log(TEST); 常数的值已更改??我读了angular的文档,它说常量不能改变它们的值。如果常量是原语值(即,1,true,“appName”),那么它的值就不能改变。然而,Angular 1.x的一个问题是,如果常数是一个对象,它的属性仍然是可赋值的。从语

为什么我要定义一个常量对象,比如

app.constant('TEST', { title: 'Hello' });
我在控制器里做这个

var x = TEST;
x.title = 'Hello World';
console.log(TEST);

常数的值已更改??我读了angular的文档,它说常量不能改变它们的值。

如果常量是原语值(即,1,true,“appName”),那么它的值就不能改变。然而,Angular 1.x的一个问题是,如果常数是一个对象,它的属性仍然是可赋值的。从语义上讲,是的,我们希望这些值永远不会改变,但是框架没有对提供的对象进行任何包装,以防止开发人员对其进行修改

您可以在此处阅读更多内容:

如果常量是原语值(即,1,true,“appName”),则无法更改该常量的值。然而,Angular 1.x的一个问题是,如果常数是一个对象,它的属性仍然是可赋值的。从语义上讲,是的,我们希望这些值永远不会改变,但是框架没有对提供的对象进行任何包装,以防止开发人员对其进行修改

您可以在此处阅读更多内容: