無料で使えるシステムトレードフレームワーク「Jiji」 をリリースしました!

・OANDA Trade APIを利用した、オープンソースのシステムトレードフレームワークです。
・自分だけの取引アルゴリズムで、誰でも、いますぐ、かんたんに、自動取引を開始できます。

無名関数で再帰

arguments.calleeで現在実行中の関数そのものを取得できます。これを利用して無名関数で再帰を行うことが可能です。

var stdout = document.getElementById("stdout");

// 無名関数の再帰
(function( x ) {
    stdout.innerHTML += x + "<br/>";
    if ( x > 0 ) {
        arguments.callee( x-1 ); // 自分自身を呼び出す。
    } 
})(100) ;

確認はこちらから

ポーリングで非同期処理の完了を待つのに使えます。

var stdout = document.getElementById("stdout");

// ポーリング / xがtrueになるのを待つ。
var x = false; // 条件
setTimeout( function(){  x = true; },  5000 ); // 5秒後にxをtrueにする

(function( ) {
    if ( !x ) {
        // 条件を満たさない。
        // 100 ms後に再度チェック
        stdout.innerHTML += "wait..<br/>";
        setTimeout( arguments.callee, 100 );
    } else {
        // 条件を満たす。
        stdout.innerHTML += "x=true<br/>";
    }
})() ;

確認はこちらから