angularjs - What is the use of angular.copy in this situation? -


i referring code on form posting coresponding angular documentation on simple form.

what use of angular.copy on here? seems code still working fine in case angular.copy being removed.

<div ng-controller="examplecontroller">   <form novalidate class="simple-form">     name: <input type="text" ng-model="user.name" /><br />     e-mail: <input type="email" ng-model="user.email" /><br />     gender: <input type="radio" ng-model="user.gender" value="male" />male     <input type="radio" ng-model="user.gender" value="female" />female<br />     <input type="button" ng-click="reset()" value="reset" />     <input type="submit" ng-click="update(user)" value="save" />   </form>   <pre>user = {{user | json}}</pre>   <pre>master = {{master | json}}</pre> </div>  <script>   angular.module('formexample', [])     .controller('examplecontroller', ['$scope', function($scope) {       $scope.master = {};        $scope.update = function(user) {         $scope.master = angular.copy(user);       };        $scope.reset = function() {         $scope.user = angular.copy($scope.master);       };        $scope.reset();     }]); </script> 

angular.copy() make deep copy of contact object. reason user being overwritten ( can see using debugger point ).

as can read here angular.copy() performs deep copy (cf. "clone") of argument - creating new object - whereas using assignment operator = assigns reference's.

thus in latter case, if we're change in $scope.master change context.


Comments

Popular posts from this blog

Delphi XE2 Indy10 udp client-server interchange using SendBuffer-ReceiveBuffer -

Qt ActiveX WMI QAxBase::dynamicCallHelper: ItemIndex(int): No such property in -

Enable autocomplete or intellisense in Atom editor for PHP -