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

    JavaScript

    「TweenMax.js」をビジネス利用のためのライセンス購入方法

    いつもJavaScriptのアニメーション部分でお世話になってる「…

  2. tweenmax_js_totation.jpg

    JavaScript

    【TweenMax.js】回転アニメーションも楽々!

    以前も記事に書いたアニメーション用のJavaScriptライブラリ…

  3. QueryString.jpg

    JavaScript

    クエリーストリングを利用してWebページ間でデータを受け渡してみる

    「クエリーストリング」っていうのは以下のようなGoogleで検索し…

  4. 20120826222152

    JavaScript

    JavaScriptでテキストボックスから値を取得する

    テキストボックスに入力された値を取得します。Elementオブジ…

  5. obj_clear.jpg

    JavaScript

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

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

  6. offset_style.jpg

    JavaScript

    「offset」で取得した値を使い回す

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

最近の記事

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

アーカイブ

  1. 留学

    ややこし英語
  2. 日常

    思考ゲーム
  3. NIKE running bag

    プロダクト

    使ってるランニング・ギアをまとめてみた。【オーディオパック】
  4. 日常

    ライナーカッティング
  5. 日常

    BATH
PAGE TOP