Just make objects
create an object, pass it to another object
by rhodee
JavaScript
//method invocation
var addist = {
val: 0,
add: function (x,y) { this.val = x + y; },
subtract: function(x,y) {this.val = x - y}
};
cake = Object.create(addist, {multiply: {value: function(x, y){this.val = x * y}}});
console.log('adding_a', cake.val); //0
cake.add(2, 9);
console.log('adding_b ', cake.val); //11
cake.subtract(2, 9);
console.log('subtract', cake.val); //-7
cake.multiply(2, 9);
console.log('multiply', cake.val); //18
//new
function Add (x,y) {
val = 0;
this.val = x + y;
};
var adder = new Add(2,9);
console.log('adder', adder.val);
//call & apply
var add = function(x,y) {
this.val = x + y };
var obj = {
val: 0
};
add.apply(obj,[2,9]);
console.log('adder', obj.val);