Warning: Parameter 1 to multibyte_patch::wplink_js() expected to be a reference, value given in /home/voidgraphics/www/crunchlog/wp-includes/plugin.php on line 579

Warning: Parameter 1 to wp_default_scripts() expected to be a reference, value given in /home/voidgraphics/www/crunchlog/wp-includes/plugin.php on line 579
JavaScriptでグローバル変数を減らす方法 | Crunchlog
Warning: Parameter 1 to wp_default_styles() expected to be a reference, value given in /home/voidgraphics/www/crunchlog/wp-includes/plugin.php on line 579

JavaScript

JavaScriptでグローバル変数を減らす方法

js_global グローバル変数はいいことない! もしかしたら使っているライブラリーと変数名がかぶってしまうかもしれないし、できるなら使いたくないです。 とはいえ使わないとなにもできません。 個人的に使っている方法として グローバル変数を減らすために以下のように するのがオススメです。
1
2
3
4
5
6
7
8
9
//グローバル変数を定義
var GL = {};
 
//「.」で変数を定義。
//もういろいろ作れます。
//普通の変数みたいな扱いでイケます。
GL.qcount = 0;
GL.pattern = 0;
GL.stage = 0;
ひとつのグローバル変数を定義して それに変数を追加していくと、 結果としてひとつのグローバル変数で いろいろできるようになります。 他にも以下のように なんでも放り込めてしまいます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
GL.count = 
    {
        count: 0,
        name: hoge,
        tel: 080-0000-0000
    }
 
GL.book = [
    { 
        p6x: '272px',
        p6y: '199px'
    },
    { 
        p6x: '300px',
        p6y: '230px'
    },
    { 
        p6x: '50px',
        p6y: '100px'
    },
];
実は同じようなことを以下の記述でもできます。
1
2
3
4
5
//以下と同じこと
GL['qcount'] = 0;
 
//上と同じこと
GL.qcount = 0;
[ ]を使うときは以下のように動的に 変数名を変更したいときに有効です。
1
2
3
4
5
6
7
8
9
10
11
//初期化
for (var i=0; i<5; i++){
    GL['qcount' + i] = 0;
}
 
//のfor文は以下と同じ
GL['qcount0'] = 0;
GL['qcount1'] = 0;
GL['qcount2'] = 0;
GL['qcount3'] = 0;
GL['qcount4'] = 0;
グローバル変数を減らして 堅牢なコードを目指したいですね。

関連記事

  1. fb022d1ac056d555673c17937de7f431.png

    JavaScript

    強力なアニメーション用のJavaScriptライブラリー「TweenMax.js」が便利!

    jQueryでもアニメーションはできるのですが、それよりも表現力豊…

  2. style_backgroundImage.jpg

    JavaScript

    背景画像をJavaScriptで入れ替える2種類の方法

    ものごとには「正解」というものがひとつではない、ってことが多いもん…

  3. canvas.jpg

    JavaScript

    WebアプリでCanvasを使うための指定方法

    Webアプリをデザインするときのお決まりになりつつあるHTML5の…

  4. scope.jpg

    JavaScript

    JavaScriptでは「変数のスコープ」を正しく理解してエラーを減らそう!

    変数の「スコープ」は正しく理解しないと、エラーにならないエラーが起…

  5. js_style.jpg

    JavaScript

    CSSのプロパティをJavaScriptで指定する

    Elementオブジェクトのstyleプロパティでその要素に対し…

  6. getElementById

    JavaScript

    JavaScript内で、HTMLのIDを直接指定したらダメ

    Webアプリをデザインしていて、JavaScriptの記述について…

最近の記事

  1. 【無印良品】ゴールデンウィーク中のご飯にレトルト買い込み!
  2. 世代ど真ん中だった!!『週刊少年ジャンプ展 vol2』
  3. デジタル通貨を買ってみた記録!とりあえず元は取っている!
  4. 【コレクション】カードダス:SDガンダム外伝シリーズ
  5. 懐かしい!!カードダスSD戦国伝!!
  6. 【無印良品】作り置きに欠かせない!バルブ付き密閉保存容器
  7. 【UNIQLO】冬のジム通いにブロックテックフリースパーカをお得に購入!!
  8. 【UNIQLO】冬のジム通いにブロックテックフリースパンツをお得に購入!!
  9. 【UNIQLO】ユニクロ誕生感謝祭で買いだめ!
  10. 便利すぎる!買ってよかったキッチンツール「キッチンペーパーハンガー」

アーカイブ

  1. 日常

    いいものを探して
  2. 日常

    抑揚の波
  3. 【無印良品】キッチンまわりは「整理ボックス」で仕分け♪

    無印良品

    【無印良品】キッチンまわりは「整理ボックス」で仕分け♪
  4. LEGO CUUSOO

    日常

    探査機ブーム!?
  5. apple-invite-iphone-sept-13.png

    Appleイベント

    2013/9/10「This should brighten everyone&…
PAGE TOP