DOMやAjaxを行うためのそれぞれのコードを出したりして、それぞれの比較を行っているスライド。 Prototype.js → jQuery 、あるいは jQuery → Prototype.js への移行を考えている場合に便利ですね。
DOMやAjaxを行うためのそれぞれのコードを出したりして、それぞれの比較を行っているスライド。 Prototype.js → jQuery 、あるいは jQuery → Prototype.js への移行を考えている場合に便利ですね。
Standard built-in objectsFunctionConstructorFunction() constructorInstance methodsFunction.prototype.apply()Function.prototype.bind()Function.prototype.call()Function.prototype[Symbol.hasInstance]()Function.prototype.toString()Instance propertiesFunction.prototype.arguments Non-standard Deprecated Function.prototype.caller Non-standard Deprecated Function: displayName Non-standard Function: length
翻訳 原文:Classical Inheritance in JavaScript著者:Douglas Crockford ※原文のコード内に誤りがあり、このまま記述しても動作しません。著者のコメント及び補足情報は翻訳メモを参照下さい。 君は自分が利口で階級にも属さず 自由だなんて思い込んでる―John LennonJavaScriptは、クラスという概念に囚われていない言語です。JavaScriptでは、古典的な継承の代わりにプロタイプ的な継承を使用します。これはC++やJavaのような旧来のオブジェクト指向言語に長けたプログラマを当惑させるかもしれません。JavaScriptのプロトタイプ的継承が、古典的継承に比べていかに表現力が優れているかを、これから見ていきましょう。 JavaJavaScript強い型付け弱い型付け静的動的古典的プロトタイプ的クラス関数コンストラクタ関数メソッド関
2006年10月18日09:20 カテゴリLightweight Languages javascript - プロトタイプ的継承 がーん。この感動はY combinatorを見たときに匹敵する。 Prototypal Inheritance function object(o) { function F() {} F.prototype = o; return new F(); } なぜこれがそれほど感動的かというと.... これを使えば、ArrayやObjectといったBuilt-Inからも難なく継承できるから。 継承のやり方としてはPrivate Members in JavaScriptが圧倒的に有名で、日本でもbrazilさんによる邦訳、Collection & Copy - JavaScriptにおける古典的継承もよく知られていると思うけど、この三行を目の前にしては霞む。でもp
JavaScriptが、いま注目を浴びている。 JavaScriptがこれだけの注目を浴びた理由の1つとして、Ajax技術の登場とも相まって、JavaScriptに対する確かな理解の必要性が高まったという事情は否定できない。しかし、それだけでは説明できない急速な注目の理由として、もう1つ、JavaScriptという言語そのものが持つユニークさが開発者の目を引いたという点は看過できないだろう。 もっとも、このユニークさは同時に、多くの開発者が感じているJavaScriptに対する苦手意識と同義でもある。これまでVisual BasicやC#、Javaといった言語でオブジェクト指向構文になじんできた開発者にとって、JavaScriptのオブジェクト指向構文はいかにも奇異なものに映るのだ。ようやくクラスという概念を理解した開発者が、JavaScriptという言語の背後にたびたび見え隠れする「プロ
http://d.hatena.ne.jp/amachang/20070413/1176421425 勉強会のあと、そしてこの記事の後、 もう一度自分の中でprototypeについてまとめてみた。 下の実行結果を見て、首をかしげた人は是非とも読んでいただければと思う。 (って、首をかしげるのは僕だけか?!) var Box = function(size){ this.size = size; }; Box.prototype = { color: "red" }; var box = new Box(10); alert(box.color); // red Box.prototype = { color: "blue" }; alert(box.color); // red var box2 = new Box(11); alert(box2.color); // blue Box.p
2007年04月12日23:30 カテゴリLightweight Languages javascript - 勝手に添削 - JavaScript入門 釈迦に説法を承知で。 IT戦記 - 社内勉強会資料 amachang - JavaScript 入門Object.prototype = { /* ... */ }は避けるべし みにくいのでオブジェクトを入れ替える方式に Box.prototype = { speed: 4, move: function() { this.left += this.speed; this.element.style.left = this.left + 'px'; if (this.left > 400) clearInterval(this.id); }, start: function() { var self = this; this.id = s
まず、prototypeプロパティを利用して、Point.moveToメソッドとPoint.toStringを定義する方法を紹介しましょう。 // moveTo を関数として定義。名前は何でも良いが、 // Point_をつけておくと分かりやすい function Point_moveTo(x, y) { this.x = x; // プロパティ x を変更 this.y = y; // プロパティ y を変更 return this; // 自分自身を返すようにすると便利 } function Point_toString() { // toString を関数として定義 return "Point(" + this.x + ", " + this.y + ")"; } function Point(x, y) { // コンストラクタではメソッドは設定しない this.x = x; t
前節では、オブジェクトのプロパティに関数オブジェクトを代入することにより、メソッドの定義をしました。この方法だと、同一クラスのオブジェクト(インスタンス)ごとに異なるメソッドを持つことができ、柔軟であるという特徴がありますが、メモリの効率がやや悪いという不効率があります。一般的なオブジェクト指向言語のように、クラス側でまとめて、メソッドのテーブルを持つことはできないでしょうか? これを実現するために、JavaScriptでは、prototypeプロパティというものが用意されています。 JavaScript言語では、オブジェクトのプロパティを探索する際に、まずオブジェクトが直接持っているプロパティから、該当のプロパティを探索します。そこになかった場合、オブジェクトのクラス(JavaScriptの場合、厳密にはコンストラクタ)のprototypeプロパティの中から、該当する名前のプロパティを探
For a recent project I needed JavaScript tooltip functionality for showing detail information. All tooltip libraries that I came across were too complicated and bloatet, did just too much and most of the time were still not flexible enough with the tooltip. So I decided to create my own library that is based on prototype.js 1.5: Download it here (BSD license): tooltip-v0.2.js A live demo can be
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く