編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

オブジェクトの拡張を局所化したブロック内で行う

オブジェクトを即時関数の引数に渡して、関数ブロック内で拡張を行う。

var obj = {};
(function (o) {
    var num = 123;
    o.num = num;
})(obj);
console.log(obj.num); // 123

ちなみに、

var num = 0;
(function (n) {
     n = 123;
})(num);
console.log(num); // 0

は、期待通りにならない。↓もダメ。

var obj = {};
(function (o) {
   var num = 123;
   o = { num:num };
})(obj);
console.log(obj.num); // undefined

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

Last-modified: 2012-01-27 (金) 19:30:02 (1947d)