Skip to content

Instantly share code, notes, and snippets.

@kalbarczyk
Created November 18, 2014 14:21
Show Gist options
  • Save kalbarczyk/bdaa776920ce1dd3db1b to your computer and use it in GitHub Desktop.
Save kalbarczyk/bdaa776920ce1dd3db1b to your computer and use it in GitHub Desktop.
AngularJS - funkcja extend - przykład z naszej książki „AngularJS - Pierwsze kroki”, która ukaże się na początku 2015r. dzięki wydawnictwu Helion.
<!doctype html>
<html data-ng-app="app">
<head>
<title>AngularJS - funkcje - angular.extend</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.css" />
</head>
<body>
<div data-ng-controller="defaultCtrl">
<h1>Otwórz konsolę aby zobaczyć efekt (F12).</h1>
</div>
<script src="https://code.angularjs.org/1.3.0/angular.js"></script>
<script>
var app = angular.module('app', []);
app.controller('defaultCtrl', function ($scope) {
var obj1 = { wartosc1: 1, wartosc2: {} };
var obj2 = angular.copy(obj1);
console.log(obj2.wartosc2 === obj1.wartosc2); // false - angular wykonał głębokie kopiowanie, mamy doczynienia z 2 niezaleznymi obiektami
console.log(angular.equals(obj1, obj2)); // true - obydwa obiekty są takie same
obj2 = {}; // czyscimy obiekt 2
angular.extend(obj2, obj1); // rozszeżamy obiekt 2 za pomocą funkcji extend
console.log(obj2.wartosc2 === obj1.wartosc2); // true - angular wykonał płytkie kopiowanie, obydwa punkty wskazują na ten sam obiekt
console.log(angular.equals(obj1, obj2)); // true - obydwa obiekty są sobie równe
});
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment