, timePass
, - 2.
, :
"TimePass", .
-, timePass(10, /*But here you execute it again*/ timePass(20))
.
timePass (20) , ()
.
() == execute
. , . ()
, , .
CALLBACK
function timePass(length, callbackFunction){
console.log("finished after doing timePass for "+length +" seconds");
if (callbackFunction && typeof callbackFunction == "function") {
callbackFunction(20);
}
}
timePass(10, timePass);
timePass(10, anotherFunction)
CASES
.
: Jsfiddle
function getData(index) {
var data;
setTimeout(function() {
data = 'server data';
},30)
return data;
}
var users = getData('users');
console.log(users);
function getAsyncData(index, callback) {
var data;
setTimeout(function() {
data = 'server data';
callback(data);
},30)
}
getAsyncData('users', function(data) {
console.log(data);
});
function processData(data) {
console.log(data);
}
getAsyncData('users', processData);