diaryこの広告は、90日以上更新していないブログに表示しています。自分が気になったことしか此処には書かないので、これだけ読んでもNinja本読んだ代わりには全くならないですよ、っと。PrototypesHTMLElement.prototypeに生やしたmethodが、document.getElementById等で取得したDOM要素のobjectで使える。document.createElementで作ったDOM要素もそうだと思う。みたいなことはできない。IE8以降とモダンブラウザで使えるらしい。便利だけど、Objectの拡張は気をつけて行うべき、Numberの拡張はやめたほうがいい。なんでNumberの拡張をやめておいたほうがいいかというと、Numberはprimitiveのnumberのラッパーなんだけど、numberを裸のリテラルで書くとprimitiveとしてしか扱われないリテラル表記を()で括るとラッパーオブジェクトとしても扱われるnumberを代入した変数は、ラッパーオブジェクトとしても扱われるというように、prototypeに追加して生やしたmethodを使えるかどうかが分かりにくいからとかそういう話。classの同名methodを呼ぶことが出来る。これを実現するからくりが面白い。}});こんな感じでclassの定義を行っている(本の方だとextendでなくsubClassだった)。定義時に渡されたmethodを呼び出しthis._superを元に戻すという処理のラッパーmethodをclassのprototypeに追加されるようにしている。呼び出し側のmethod毎に違うmethodが呼ばれるのはこういうわけ。methodを呼んでいない場合は、ラッパーmethod作成処理をスキップしている。短いコードだけどかなり興味深いので、じっくり読んでみるといい。読者になる検索リンクはてなブログブログをはじめる週刊はてなブログはてなブログPro最新記事r.jsでビルドする際に設定として使うbuild.jsを動的にする。月別アーカイブはてなブログをはじめよう!monjudohさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。