私のアプリケーションはjavascriptでグローバル変数を使用しています。それらがいくつあるかを見つける方法はありますか?
ありがとうオム
私のアプリケーションはjavascriptでグローバル変数を使用しています。それらがいくつあるかを見つける方法はありますか?
ありがとうオム
私はそれを作りました。
var GlobalTester = (function(){
var fields = {};
var before = function(w){
for(var field in w){
fields[field] = true;
};
};
var after = function(w){
for(var field in w){
if(!fields[field]){
console.log(field + " has been added");
}
};
};
return {before: before, after:after};
}());
GlobalTester.before(window);
// Run your code here
window.blar = "sdfg";
GlobalTester.after(window);
blar has been added
これはコンソールに出力されます
ブラウザの開発者ウィンドウ (F12) でこれを試してください。
Object.keys(window).length
次のように window 要素を反復処理します。
for(var globe in window){
console.log(globe);
}
リンターを使用すると、グローバルが導入されたときに警告が表示されます。window
コードの実行前後の項目を比較することもできます。
ウィンドウ オブジェクトを検査しますが、これを行う前にすべてのグローバル変数名を知っておく必要があります。以下に例を示します。
var myGlobalVars = {"global1":0, "global2":0};
function countGlobals() {
var count = 0;
for (myGlobalVar in myGlobalVars) {
if (myGlobalVar in window) {
count++;
}
}
return count;
}
countGlobals();