JavaScriptのいくつかの知識の破片(2)-反射-グローバル変数-フィードバック
3590 ワード
JavaScriptでの反射:プログラミング言語での反射原理は同じです.metadata(言語を記述する言語)を操作することによって、反射機能を持たない言語を完成するのは難しい機能です.静的言語では、反射は大きなものです.例えば、運行時に動的に方法を作って呼び出したり、遅延結合などをします.八九年前にC啱22002;の反射を初めて使った時、その興奮ぶりは格別です.しかし、動的言語の世界では、多くの機能が反射によって実現される必要はないので、javascriptの反射は比較的簡単になります.したがって、javascriptの反射の主な使い方は、typeof、instance of、hasOwn Propertyのようないくつかです.
グローバル変数:
javascriptでは、任意の場所でグローバル変数を定義できます.アプリケーションが便利なようです.コードが規模になって、ファイルを切り分けたら、もう終わりです.コンパイラは構いません.管理できます.
二つの方法:
1.全てを一緒に書いて、プログラムの一番上の部分のように管理しやすいです.
2.グローバル変数を書く容器は、使用時にすべてのグローバル変数を投げ込みます.このようなメリットも統一管理で検索しやすいです.
JavaScriptでは、関数をパラメータとして別の関数に導入し、この関数は適切なときに着信パラメータを呼び出す.コードの例を使って説明します.
このコードを実行した結果、一秒後のコールバック関数afunctionが宿主関数によって呼び出され、同時に宿主関数がafunctionにパラメータを伝達することが重要です.実際には,伝達パラメータはすべてコールバック関数であり,依存する内容を正確に実行するためである.
var alteral={
name:"a lteral"
};
console.log(typeof alteral );//object
console.log(alteral.hasOwnProperty("name"));//true
console.log(alteral.hasOwnProperty("gender"))//false;
var fun = function(){
var subfun=function(){
return null
};
};
typeof(fun);
console.log( fun instanceof Function); //true
グローバル変数:
javascriptでは、任意の場所でグローバル変数を定義できます.アプリケーションが便利なようです.コードが規模になって、ファイルを切り分けたら、もう終わりです.コンパイラは構いません.管理できます.
二つの方法:
1.全てを一緒に書いて、プログラムの一番上の部分のように管理しやすいです.
2.グローバル変数を書く容器は、使用時にすべてのグローバル変数を投げ込みます.このようなメリットも統一管理で検索しやすいです.
var variableBag={
}
JavaScriptでは、関数をパラメータとして別の関数に導入し、この関数は適切なときに着信パラメータを呼び出す.コードの例を使って説明します.
function mainfunction(callback){// , callback 。
// , 1 , callback
var startTime = new Date().getTime();
while (new Date().getTime() < startTime + 1000);
var now = new Date().getTime();
callback(now);//
};
function afunction(time){// callback
console.log("afunction is called");
console.log(time);
};
mainfunction(afunction);//
このコードを実行した結果、一秒後のコールバック関数afunctionが宿主関数によって呼び出され、同時に宿主関数がafunctionにパラメータを伝達することが重要です.実際には,伝達パラメータはすべてコールバック関数であり,依存する内容を正確に実行するためである.