javascript - The difference between value and constant in angularjs (mainly the question of whether it can be modified)
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-06-08 11:02:13
0
1
1145

Looking up the difference between angularjs global variables value and constant on the Internet, the answers are basically the same
1. Value cannot be injected in config, but constant can
2. Value can be modified, but constant cannot Modification, generally use constant directly to configure some data that needs to be used frequently.

There is nothing wrong with the first point, but what does the second point mean that this constant cannot be modified? What cannot be modified

<!DOCTYPE html>
<html lang="en" ng-app="myapp" >
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="Scripts/jquery-1.10.2.js"></script>
<script src="base/angular.min.js"></script>
<script type="text/javascript">
    var app = angular.module('myapp', []);
    app.constant('myConstant', { "value1": "林炳文", "value2": "hello world", value3: 1 });
    app.controller('myCtrl1', function ($scope, myConstant) {
        $scope.onclick1 = function () {
            $scope.value1 = myConstant.value1 + (++myConstant.value3);
            myConstant.value1 = $scope.value1;
            myConstant.value2 = $scope.value1;
        };
    });
    app.controller('myCtrl2', function ($scope, myConstant) {
        $scope.onclick2 = function () {
            $scope.value2 = myConstant.value2 + (++myConstant.value3);
            myConstant.value1 = $scope.value2;
            myConstant.value2 = $scope.value2;
        };
    });
</script>

</head>

    <body>
            <p ng-controller="myCtrl1">
                    <button ng-click="onclick1()">请点击我1</button>
            {{value1}}
    
</p>
        <p ng-controller="myCtrl2">
                <button ng-click="onclick2()">请点击我2</button>
              {{value2}}
    </p>
</body>

</html>
I wrote a small demo. It is obvious that the constant variable in it can be modified (I am testing an object here, and it can also be modified if it is replaced by a variable value). I don’t know if it’s me. I misunderstood it or wrote it in the wrong place. What is this so-called inability to modify?

曾经蜡笔没有小新
曾经蜡笔没有小新

reply all(1)
巴扎黑

angular.module('myApp', [])
.constant('PI', '3.1415926')
.config(function(PI) {})
.value('name','Zhang San')

constant is equivalent to a constant. Constant can be injected during config, but value cannot

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template