prototypeとthis
が難しい。というかthisきめえ。
function sss(){ return this; } sss.ddd = function(){ return this; }; sss() // Global sss.ddd() // sss sss.ddd()() // Global
Number.prototype.sss = function(){ return this; }; Number.prototype.sss.ddd = function(){ return this; }; (10).sss() // 10 (10).sss.ddd() // (10).sss (10).sss.ddd()() // Global
上の方は結果に違いが出ないからいいんだけど、下のほうはsss内thisが違うものに。prototypeが関係なくなって、ただの function(){ return this; } となってる。Javascriptのthisって何か難しいくて気持ち悪い。