ホームページ > 記事 > ウェブフロントエンド > JavaScript グローバル変数宣言の概要とその利点と欠点
JavaScriptにおけるグローバル変数の宣言は、主に明示的宣言と暗黙的宣言に分けられます:
宣言方法その1:
var(キーワード)+変数名(識別子)を使って関数の外で宣言する、つまりグローバル変数です。それ以外の場合は、関数内で宣言されたローカル変数です。このメソッドは明示的な宣言です。詳細は次のとおりです。
<script> var test = 5;//全局变量 function a(){ var a = 3;//局部变量 alert(a); } function b(){ alert(test); } //a();//调用a方法,那么方法里面的内容才会执行 //b();//同上 </script>
宣言メソッド 2:
var を使用せずに、識別子 test に値を直接割り当てます。これにより、グローバル変数 test が暗黙的に宣言されます。ステートメントが関数内にある場合でも、関数が実行されると test はグローバル変数になります。
<script> test = 5;//全局变量 function a(){ aa = 3;//也是全局变量 alert(test); } //a(); //输出5 //alert(aa);//这里也可以方法a()方法里面的变量,因为aa是全局变量 </script>
宣言メソッド 3:
ウィンドウ グローバル オブジェクトを使用して宣言します。グローバル オブジェクトの属性もグローバル変数に対応します。詳細は次のとおりです。
<script> window.test = 50; alert(test);//输出50 </script>
このメソッドは、いくつかの関数を公開するためによく使用されます。匿名関数が実行された後の全体像。 例えば、JQuery1.5の最後の文
コードは次のとおりです:
window.jQuery = window.$ = jQuery;
グローバル変数の利点:
変数の数を減らし、実パラメータと仮パラメータのデータ転送にかかる時間を削減できます。
グローバル変数の欠点:
(1) グローバル変数は、プログラムの実行開始時に静的記憶領域に格納され、プログラムの終了時にメモリが解放されます。ローカル変数の動的割り当ておよび動的解放と比較して、有効期間は比較的長いため、グローバル変数が多すぎると、より多くのメモリ ユニットを占有することになります。
(2) グローバル変数は関数のカプセル化パフォーマンスを破壊します。関数はブラック ボックスのようなもので、関数のパラメーターと戻り値を通じて入出力を実行します。関数の内部実装は比較的独立しています。ただし、関数内でグローバル変数が使用されている場合、関数本体内のステートメントは関数のパラメーターをバイパスしてアクセス時に値を返す可能性があり、この状況では関数の独立性が破壊され、関数がグローバル変数に依存するようになります。同時に、この機能の移植性も低下します。
(3) グローバル変数により、関数のコードが読みにくくなります。複数の関数がグローバル変数を使用する可能性があるため、関数の実行時にグローバル変数の値がいつでも変更される可能性があり、これはプログラムのエラー チェックやデバッグに非常に悪影響を及ぼします。
したがって、絶対に必要な場合を除き、グローバル変数を使用しないことが最善です。
変数が空かnullかを判断するJSメソッド
function isNull(data){ return (data == "" || data == undefined || data == null) ? "暂无" : data; }
以上がJavaScript グローバル変数宣言の概要とその利点と欠点の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。