Object.prototype.update = function(obj){ for( var i in obj ){ if( obj.hasOwnProperty(i) ){ this[i] = obj[i]; } } return this; };
Funkcja update pozwala w prosty sposób rozbudować lub nadpisać dowolne właściwości obiektu.
Ponieważ funkcja operuje na referencji do obiektu, oraz zwraca tę referencję możemy z niej skorzystać na dwa sposoby.
Pierwszy z nich polega na utworzeniu obiektu i nadpisaniu/rozszerzeniu jego metod/wartości.
var obj = { a: 1, b: 2 }; obj.update({ b: 3, c: 4 }); console.log(obj);
Drugi sposób to wywołanie metody update na naszym obiekcie w chwili jego utworzenia i zwrócenie na jego miejsce nowego obiektu.
var obj = { a: 1, b: 2 }.update({ b: 3, c: 4 }); console.log(obj);
Brak komentarzy:
Prześlij komentarz