ホームページ  >  記事  >  ウェブフロントエンド  >  AngularJS APIのコピーディープコピーの詳細な説明と例

AngularJS APIのコピーディープコピーの詳細な説明と例

高洛峰
高洛峰オリジナル
2017-01-03 15:54:161476ブラウズ

Angular は、オブジェクトをコピーできる API - copy(source,destination) を提供し、ソース オブジェクトのディープ コピーを実行します。

使用する場合は以下の点に注意する必要があります:

パラメータが1つしかない場合(コピーされたオブジェクトが指定されていない場合)、コピーオブジェクトが返されます

宛先が指定されている場合、オブジェクトは深くなります宛先にコピーされます

ソースが null または未定義の場合、ソースは直接返されます

ソースが宛先の場合、エラーが報告されます。

使用例を見てみましょう:

<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <script src="http://apps.bdimg.com/libs/angular.js/1.2.16/angular.min.js"></script>
</head>
<body ng-app="copyExample">
  <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 />
      <button ng-click="reset()">RESET</button>
      <button ng-click="update(user)">SAVE</button>
    </form>
    <pre class="brush:php;toolbar:false">form = {{user | json}}
master = {{master | json}}
<script> angular.module(&#39;copyExample&#39;, []) .controller(&#39;ExampleController&#39;, [&#39;$scope&#39;, function($scope) { $scope.master= {}; var test1; console.log(angular.copy(test1));//undefined var test3=null; console.log(angular.copy(test2));//undefined var test2 = "a"; // console.log(angular.copy(test2,test2));//error!! $scope.update = function(user) { // Example with 1 argument $scope.master= angular.copy(user); }; $scope.reset = function() { // Example with 2 arguments angular.copy($scope.master, $scope.user); console.log($scope.master); console.log($scope.user); }; $scope.reset(); }]); </script>

AngularJS API之copy深拷贝详解及实例

上記はAngularJS APIのコピーディープコピーに関する情報をまとめたものです。今後も関連情報を追加していきますので、よろしくお願いいたします。このサイト!

AngularJS API のディープコピーの詳細な説明と例については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:JavaScriptによるシャローコピーとディープコピーの詳細説明次の記事:JavaScriptによるシャローコピーとディープコピーの詳細説明

関連記事

続きを見る