// constructor function
function Person (name) {
// assigning parameter values to the calling object
this.name = name;
// defining method
this.greet = function () {
return ('Hello' + ' ' + this.name);
}
}
// method 1
function nested(name , age , color){
this.name = name;
this.details = {
age : age,
color : color
}
}
let nestedObj = new nested( "Elroi" , 22 , "blue");
console.log(nestedObj)
// method 2
class Nested2{
constructor(name , age , color){
this.name = name;
this.details = {
age : age,
color : color
}
};
displayInfo(){
console.log(`${this.name} ${this.details.age} ${this.details.color} `)
}
}
let aaa = new Nested2("Ean" , 14 , "black");
aaa.displayInfo();
function add(c, d) {
return this.a + this.b + c + d;
}
var o = {a: 1, b: 3};
// The first parameter is the object to use as
// 'this', subsequent parameters are passed as
// arguments in the function call
add.call(o, 5, 7); // 16
// The first parameter is the object to use as
// 'this', the second is an array whose
// members are used as the arguments in the function call
add.apply(o, [10, 20]); // 34