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. parseInt.jpg

    JavaScript

    JavaScriptでローカルストレージを使うときに覚えておきたい文字列型から数値型への変換方法

    HTML5を使ったWebアプリをデザインしているときに必要だったの…

  2. obj_clear.jpg

    JavaScript

    配列に入れた無名オブジェクトの値をクリアする

    オブジェクトの値を配列にいれて管理することってけっこうあります。…

  3. fb022d1ac056d555673c17937de7f431.png

    JavaScript

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

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

  4. offset_style_data.jpg

    JavaScript

    「offset」と「style」で取得する値が違う

    ちょっとはまったのでメモ。以下のように「offset」と「sty…

  5. js_style.jpg

    JavaScript

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

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

  6. about_debug-4.jpg

    JavaScript

    Android端末のデフォルト・ブラウザでJavaScriptのデバッグをする方法

    Webアプリをデザインするときに必須となるのがJavaScript…

最近の記事

  1. 【UNIQLO】ユニクロ誕生感謝祭で買いだめ!
  2. 便利すぎる!買ってよかったキッチンツール「キッチンペーパーハンガー」
  3. ジムで活躍!プロテイン用のボトルにおすすめ!「nalgene(ナルゲン)の沖倉商店コラボ・ボトル」
  4. コミックのイラストが新鮮だった!『MARVEL展』
  5. ジム用に購入♪ リバーサル・オッシュマンズ別注「ドライスウェットショーツ」
  6. 暮しの手帖社とのコラボ作品!大きい面積が使いやすい!「日東紡の新しいふきん」
  7. 水引と風呂敷の包み方のデザインが美しい引き出物「祝づつみ」
  8. 【無印良品】ちょっと小さいクリップも買っておいて損はない「袋止めクリップ・小」
  9. 【無印良品】普通に使えるクリップが安くてうれしい「袋止めクリップ・大」
  10. 今年の手帳はコレに決めた♪「ほぼ日手帳 2017 オリジナル」

アーカイブ

  1. 日常

    アートをはしご
  2. 日常

    finished up
  3. l_davinci_leicester-1.jpg

    展覧会

    レオナルド・ダ・ヴィンチ展「直筆ノート「レスター手稿」日本初公開」
  4. DIY-Camera-Made-Out-of-Cardboard-LEGO-and-Duct-Tape_0-l.jpg

    LEGO

    レゴと段ボールとダクトテープがあればカメラができる!
  5. 日常

    そろそろ
PAGE TOP