javascriptでextendを実装

phiary に引っ越しました. 毎日プログラミングやWebに関する情報を発信しています! RSS 登録してたまに覗いたり, tweet やハテブして拡散してもらえると幸いです.

Pocket

jQueryやprototypeでおなじみのextend(オブジェクト拡張)関数を作ってみました。

var TM = {};

TM.extend = function(dest, source){
    for (var property in source) {
        dest[property] = source[property];
    }
    return dest;
}

TM.extend(TM, {hoge:function(){alert("hoge")}});
TM.hoge();

TMはnamespaceです。
グローバル空間(window)を汚したくないので、TMに追加しています。

extendはprototypeをもろパクリ。単純にsourceのプロパティで
dest内部を上書き or 拡張しているだけです。

TM.extend(TM, {hoge:function(){alert("hoge")}});

で TM namespace にhogeという関数を追加しています。
そして、

TM.hoge();

を実行。アラートでhogeと表示されます。

TRACK BACK URL

POST COMMENT

メールアドレスが公開されることはありません。