Angularを使用して、オブジェクトのプロパティ(値なし)を別のオブジェクトにコピーします

ショーン・ルッティン

私たちはangular.copyangular.extendを試しましたただし、これらは両方ともプロパティ値をコピーします。あるオブジェクトのプロパティを、値なしで別のオブジェクトにコピーするにはどうすればよいですか?

これは、javascript-objectをすばやくクリアする方法に基づいた試みのフィドルです。

angular.module('App', []);

function Ctrl($scope) {

    function copyNotValues(obj) {
        var newObj = angular.copy(obj);
        for (prop in newObj) {
            if(newObj.hasOwnProperty(prop))
            {
                newObj[prop] = null;
            }
        };
        return newObj;
    }

    $scope.master = {
        foo: 'original foo',
        bar: 'original bar'
    };

    $scope.copy = angular.copy($scope.master);
    $scope.extend = angular.extend($scope.master);
    $scope.copyNotValues = copyNotValues($scope.master);

}
JeffryHouser

JavaScriptにはクラスの概念がありません。プロトタイプの継承を使用します。つまり、別のオブジェクトをコピーすることによってのみ新しいオブジェクトを作成できます。それを行うと、プロパティを取得します。

これを回避するには、プロパティ値のない「マスター」オブジェクトを作成します。このようなもの:

master = {
  foo: '',
  bar: ''
};

次に、新しいキーワードを使用して、オブジェクトの新しい「インスタンス」を作成できます。

$scope.master = new master();
$scope.master.foo = 'original foo';
$scope.master.bar = 'original bar';

オブジェクトの新しいインスタンスを作成する必要がある場合は、コピーではなく、元のインスタンスに戻ります。

$scope.masterCopy = new master();

これは実際にはJavaScriptの問題であり、Angular固有の問題ではありません。理論的には、オブジェクトの新しいインスタンスを作成する関数を記述し、プロパティをループしてすべてをnullまたは空の文字列に設定できると思います。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

プロパティjavascriptではなく、あるオブジェクトの値のみを別のオブジェクトにコピーします

分類Dev

あるオブジェクトの選択したプロパティ値を別のオブジェクトにコピーする

分類Dev

オブジェクトのプロパティをGroovyの別のオブジェクトにコピーします

分類Dev

参照ではなく値で新しいオブジェクトのオブジェクト関数とプロパティをコピーします-javascript

分類Dev

anglejs-あるオブジェクトから別のオブジェクトに共通のプロパティをコピーします

分類Dev

mongodb:配列プロパティを1つのオブジェクトから別のオブジェクトにコピーします

分類Dev

JavascriptまたはjQueryを使用してプロパティを追加せずに、オブジェクトのプロパティを別のオブジェクトにコピーするにはどうすればよいですか?

分類Dev

BeanUtilsなどを使用して、null以外のプロパティをあるオブジェクトから別のオブジェクトにコピーします

分類Dev

BeanUtilsなどを使用して、null以外のプロパティをあるオブジェクトから別のオブジェクトにコピーします

分類Dev

角度jsを使用して、プロパティのオブジェクトとオブジェクトの配列にオブジェクトを追加します

分類Dev

現在のオブジェクトからプロパティを取得して、別のオブジェクトのプロパティ値を使用する

分類Dev

reduceを使用して、ソースオブジェクトの列挙可能なプロパティを宛先オブジェクトに拡張します

分類Dev

RealmListをプロパティとして含むRealm内のオブジェクトをディープコピーし、RealmListオブジェクトが同じオブジェクトを参照しないようにする方法

分類Dev

プロパティに基づいて、リストオブジェクトをあるリストから別のリストにコピーします

分類Dev

オブジェクトのプロパティを別のスキップする未定義のプロパティにコピーします

分類Dev

キー.NETCoreによってオブジェクトのプロパティを取得し、別のオブジェクトに配置します

分類Dev

ConfigurationElementCollection内のオブジェクトのプロパティを配列にコピーしますか?

分類Dev

Angular-2:あるオブジェクトを別のオブジェクトにコピーします

分類Dev

他のオブジェクトのプロパティと値のペアを使用して新しいオブジェクトを作成します

分類Dev

Jsonオブジェクトを使用して、機能しないオブジェクトのプロパティを定義しようとしています

分類Dev

オブジェクトをループしてから、オブジェクトのプロパティと値を繰り返し処理します

分類Dev

すべてのオブジェクトプロパティ値がtrueになるのを待ってから、コードの実行を続行します

分類Dev

VBAクラスモジュール:別のプロパティを使用してオブジェクトからプロパティを取得します

分類Dev

オブジェクトのプロパティ(プライベートセッターを持つものを含む)を同じタイプの別のオブジェクトにディープコピーします

分類Dev

Angular Formsは、オブジェクトの各プロパティのコントロールを作成します

分類Dev

オブジェクトプロパティ値を使用して、オブジェクトを含む複数の配列を結合します

分類Dev

オブジェクトの配列から、各オブジェクトのプロパティの値を抽出し、異なる配列に配置します

分類Dev

Nより大きい最初のオブジェクトプロパティの値をカウントし、別のオブジェクトを作成します

分類Dev

オブジェクトのプロパティ値がオブジェクトの2つの配列で等しい場合、それらのオブジェクトを1つのオブジェクトにマージします

Related 関連記事

  1. 1

    プロパティjavascriptではなく、あるオブジェクトの値のみを別のオブジェクトにコピーします

  2. 2

    あるオブジェクトの選択したプロパティ値を別のオブジェクトにコピーする

  3. 3

    オブジェクトのプロパティをGroovyの別のオブジェクトにコピーします

  4. 4

    参照ではなく値で新しいオブジェクトのオブジェクト関数とプロパティをコピーします-javascript

  5. 5

    anglejs-あるオブジェクトから別のオブジェクトに共通のプロパティをコピーします

  6. 6

    mongodb:配列プロパティを1つのオブジェクトから別のオブジェクトにコピーします

  7. 7

    JavascriptまたはjQueryを使用してプロパティを追加せずに、オブジェクトのプロパティを別のオブジェクトにコピーするにはどうすればよいですか?

  8. 8

    BeanUtilsなどを使用して、null以外のプロパティをあるオブジェクトから別のオブジェクトにコピーします

  9. 9

    BeanUtilsなどを使用して、null以外のプロパティをあるオブジェクトから別のオブジェクトにコピーします

  10. 10

    角度jsを使用して、プロパティのオブジェクトとオブジェクトの配列にオブジェクトを追加します

  11. 11

    現在のオブジェクトからプロパティを取得して、別のオブジェクトのプロパティ値を使用する

  12. 12

    reduceを使用して、ソースオブジェクトの列挙可能なプロパティを宛先オブジェクトに拡張します

  13. 13

    RealmListをプロパティとして含むRealm内のオブジェクトをディープコピーし、RealmListオブジェクトが同じオブジェクトを参照しないようにする方法

  14. 14

    プロパティに基づいて、リストオブジェクトをあるリストから別のリストにコピーします

  15. 15

    オブジェクトのプロパティを別のスキップする未定義のプロパティにコピーします

  16. 16

    キー.NETCoreによってオブジェクトのプロパティを取得し、別のオブジェクトに配置します

  17. 17

    ConfigurationElementCollection内のオブジェクトのプロパティを配列にコピーしますか?

  18. 18

    Angular-2:あるオブジェクトを別のオブジェクトにコピーします

  19. 19

    他のオブジェクトのプロパティと値のペアを使用して新しいオブジェクトを作成します

  20. 20

    Jsonオブジェクトを使用して、機能しないオブジェクトのプロパティを定義しようとしています

  21. 21

    オブジェクトをループしてから、オブジェクトのプロパティと値を繰り返し処理します

  22. 22

    すべてのオブジェクトプロパティ値がtrueになるのを待ってから、コードの実行を続行します

  23. 23

    VBAクラスモジュール:別のプロパティを使用してオブジェクトからプロパティを取得します

  24. 24

    オブジェクトのプロパティ(プライベートセッターを持つものを含む)を同じタイプの別のオブジェクトにディープコピーします

  25. 25

    Angular Formsは、オブジェクトの各プロパティのコントロールを作成します

  26. 26

    オブジェクトプロパティ値を使用して、オブジェクトを含む複数の配列を結合します

  27. 27

    オブジェクトの配列から、各オブジェクトのプロパティの値を抽出し、異なる配列に配置します

  28. 28

    Nより大きい最初のオブジェクトプロパティの値をカウントし、別のオブジェクトを作成します

  29. 29

    オブジェクトのプロパティ値がオブジェクトの2つの配列で等しい場合、それらのオブジェクトを1つのオブジェクトにマージします

ホットタグ

アーカイブ