Die Simulation einer zeitlich asynchronen Aufruf

Ich versuche zu simulieren, die eine asynchrone callback, das etwas tut, in eine festgelegte Anzahl von Sekunden. Ich will, dass diese alle log zur gleichen Zeit, 3 Sekunden aus, wenn Sie ausgelöst werden. Recht jetzt, Sie melden sich nacheinander 3 Sekunden nach jedem anderen. Die sleep-Funktionen sind blockiert das ganze Skript ausgeführt wird. Irgendeine Idee warum?

function sleep(delay) {
    var start = new Date().getTime();
    while (new Date().getTime() < start + delay);
}

var same = function(string, callback){
    new sleep(3000);
    return callback(string);
}

same("same1", function(string){
    console.log(string);
});
same("same2", function(string){
    console.log(string);
});
same("same3", function(string){
    console.log(string);
});
InformationsquelleAutor ThomasReggi | 2013-12-02
Schreibe einen Kommentar