[Javascript]node.jsでsleep sort

#!/home/dqn/local/node/bin/node

var numbers = [ 7, 5, 1, 4, 8, 2, 9, 3, 6];

for (var i = 0; i < numbers.length; i++) {
    (function(n){
        setTimeout(
            function(){ console.log(numbers[n]) }
            , numbers[n] * 1000);
    })(i);

}

普通にsetTimeoutに関数を渡すだけではダメで、無名関数でsetTimeoutを囲んでやる必要があります。

実行結果
$ ./sleep_sort.js
1
2
3
4
5
6
7
8
9


Enjoy!
カテゴリ: