extend :: Object |
The Object.extend function amends an object with the properties of a second object, effectivly combining them.
Object.extend(objA, objB); // Amends objA with objB
The function also returns the changed objA for direct usage in an assignment or function call. Properties in objB override properties of the same name in objA.
A common use for Object.extend() in script.aculo.us is to update default options with user-supplied overrides.
Examples
Basic usage:
objA = {name: "Joe", age: "12"}; objB = {name: "Tom"};
Object.extend(objA, objB);
objA.name // -> "Tom"
Usage with assignment:
objA = {name: "Joe", age: "12"}; objC = Object.extend(objA, {name: "Tom"}); objD = Object.extend(objA, {name: "Jim"});
objC.name // -> "Tom"
objD.name // -> "Jim"
// Note that objA always gets changed objA.name // -> "Jim
Notes
These official documentation is not fully completed yet. These above are taken from the script.aculo.us wike and created by Thomas Fuchs.
Do not mistake this method with its quasi-namesake Element.extend, which implements Prototype’s (much more complex) DOM extension mechanism.
|
Prototype API 1.5.0 - prototypejs.org