質問: "123456"; console.log($scope.item.int); // 123456 ``` 以上のように、変数dataにバインドした$scopeを代入後、変数dataの値を変更した筈ですが、$scope自体の値も変わっています。 これは仕様なんでしょうか。 また、回避する手段はあるのでしょうか。 もしかしたらスコープの基礎的な部分かもしれませんが、分かる方が居ましたら回答お願いします。
回答: JavaScriptにおいて、オブジェクトや配列を変数に代入すると参照渡しとなります。 `data`は最終的に`$scope.nav.getCurrentPage().options.item`を参照しているということです。 これを回避するには、`angular.copy()`を使用します。 ``` var data = angular.copy($scope.item); ```