Doge log

Abby CTO 雑賀 力王のオフィシャルサイトです

thisの意味がわかった

javascriptで「this」でアクセスしても見つからない事があったんだけど。
意味がわかりました。
prototype.jsのbindAsEventListenerの意味がわかった。
どこで実行するかを指定するのね。
これを使わないとcallback関数内でthisでアクセスできなくなっちゃう。
名前空間(?)を使ってるとこれがないと辛い。
フル指定になるし、staticにしか値を保持できなくなっちゃう気がする。
で個人的にDOMで使うのでこれでもいいな。

Function.prototype.bindAsEventListener = function(object, element){
    var x = this;
    var e = element;
    return function(event) {
        return x.call(object, event || window.event, e);
    }
}

うくく。


うくく。