2012-02-08 17 views
0

私はこのチュートリアル次のページからJavaScript関数を抽出するにはどうすればよいですか?

http://eloquentjavascript.net/chapter8.html

に従うことをしようとしているこれは、関数inPlacePrinterに言及しています。私は実際のテキストでこれのソースコードを見つけることができません。インタラクティブバージョンは動作しているようですが、生のコードを見つけることができないので、私はビューソースを掘り下げようとしました。私はそれをどのように見つけますか?

+0

この「インタラクティブバージョン」はどこですか? –

答えて

0

JavaScriptファイルを見るには、Firebugのようなものをお試しください。

0

thats大きなチュートリアルです。ページの半分ほどは次の文です:

しかし、これらの余分な変数はすべて乱雑になることがあります。もう一つの良い解決策は、第6章の部分的に似た関数を使うことです。関数に引数を追加する代わりに、関数のapplyメソッドの最初の引数を使ってこのオブジェクトを追加します:

関数inPlacePrinterは第6章の部分と呼ばれるオブジェクト?

2

ではoo.jsあり、このラインである:

var div = __ENV.parent.DIV(); 

__ENVが他の場所で定義されていない、また他のjsファイルのいずれかで、多分ページで使用MochiKitフレームワークの一部です。あなたは、ブラウザのコンソールの出力を表示するために、この2つの機能でinPlacePrinter()を置き換えることができ

function show(x){ 
    var show = ""; 
    for (var y = 0; y < arguments.length; y++) { 
     show += arguments[y];  
    } 
    console.log(show); 
} 

function showTerrarium(terrarium){ 
    this.show(terrarium); 

return function() { 
     console.clear(); 
     this.showTerrarium(terrarium); 
    } 
} 

そして、このような方法でそれらを使用

/*replace:*/ terrarium.onStep = partial(inPlacePrinter(), terrarium); 
/*with:*/ terrarium.onStep = partial(showTerrarium(terrarium), terrarium); 

を多分よりよい解決策がありますしかし、これはうまくいった。