call() & apply()

JavaScript

function greet() {
    console.log('My name is ' + this.name);
}

function friendlyGreet(person, mood) {
    var person = person || 'You';
    var mood = mood || 'good';
    var sentence = 'Hello ' + person + '! ' +
                    'My name is ' + this.name + '. ' +
                    'I am in a ' + mood + ' mood.';
    console.log(sentence);
}

var bart = {
    name: "Bart"
};

greet.call(bart);

friendlyGreet.call(bart, 'Homer', 'bad');

//friendlyGreet.apply(bart);


function getInput (options, callback) {
    //allUserData.push (options);
    
    callback (options);

};


getInput ({name:"Mark", email:"[email protected]"}, function(callback) {

console.log(callback.email);

});


var elso_masodik = {

    elso : function(data, callback) { 
    
    callback({eredmeny: data.osszeg * 1})
    
    },
    
    masodik : function(data, callback) { 
    
    callback({eredmeny: data.osszeg * 2}) 
    
    },
};

var key = 'osszeg';
var value = 100;
//var option = JSON.parse('{"' + key + '":"' + value + '"}');
var option = eval('({ ' + key + ' : ' + value + ' })'); 

var object_name = 'elso_masodik';
var object_key = 'masodik';

eval(object_name + '.' + object_key)(option, function(callback) {

console.log(callback.eredmeny);

});

//http://www.2ality.com/2014/01/eval.html