タグ

prototypeに関するmEGGrimのブックマーク (5)

  • javascript - 関数名の取得とtypeof()の再々発明 : 404 Blog Not Found

    2011年12月07日03:30 カテゴリLightweight Languages javascript - 関数名の取得とtypeof()の再々発明 な、なんだってー!? はてなブックマーク - kamisetoのブックマーク constructor.nameを見ればいいんじゃなの?違うのかな? そんなおいしいプロパティなんて、あったっけ? MDNの中で逢った、ような… constructor.name?そんなのJavaScript: The Good Partsどころかサイでも見たことねーぞ。でもconsoleつついたら確かに使える… 見つけました。 Function - MDN name Non-standard The name of the function. Non-standard, Non-standard, Non-standard、だと!? 実際いろいろ嗅ぎ回ってみ

    javascript - 関数名の取得とtypeof()の再々発明 : 404 Blog Not Found
  • C/C++ プログラマのための JavaScript 入門: prototype と継承 — 旧メイン・ブログ | Baldanders.info

    オブジェクトの話の2回目です。 今回は prototype の話から。 この辺までだといかにも入門って感じで楽なんですけどねぇ。 例によって「プロローグ」で挙げた文献を頻繁に参照しています。 これらの文献を参照しながらご覧になることをお薦めします。 またこの回では説明の都合上クラスとコンストラクタを同義に扱っています。 この点については脳内で適当に変換して読んでいただけると嬉しいです。 これまで説明したとおり関数もオブジェクトです。 変数やプロパティに値として代入できるほか, 自身にもプロパティやメソッドを追加することができます(そういう意味ではデータ型のオブジェクトの一種とみなせます)。 例えばこういう書き方もできます。 uniqueId.counter = 0; function uniqueId() { return uniqueId.counter++; } WScript.Ech

    C/C++ プログラマのための JavaScript 入門: prototype と継承 — 旧メイン・ブログ | Baldanders.info
  • プログラマのためのJavaScript (7):プロトタイプ継承の正体

    JavaScriptには、クラスとその継承はないが、プロトタイプベースの継承をサポートしている」と、まー、これはよく言われる決まり文句です。がしかし、JavaScriptにおけるアレを継承と呼んでいいものかどうか? 「継承」といえば、多くの人が通常の継承、つまりクラスベースの継承をイメージするでしょうし、無意識に通常の継承とのアナロジーを追うことになるでしょう。これは危険だと思いますよ。 「プロトタイプ」とか「継承」という言葉から連想する常識的なイメージは全部捨てて、事実を白紙から眺めましょう。その事実とは、「JavaScriptには、実行時プロパティ検索のメカニズムがある」と、それだけです。 今回の内容: 「プロトタイプ」じゃ、なんのことだかわからない __proto__プロパティ、__proto__オブジェクト、__proto__チェーン __proto__チェーンを追いかけてみる

    プログラマのためのJavaScript (7):プロトタイプ継承の正体
  • [ThinkIT] 第3回:Prototype.js流のオブジェクト指向を理解する (1/2)

    さあ、ここから題のPrototype.jsです。記事では、Prototype.jsの機能の中でも、代表的な「オブジェクト指向の機能」「関数を拡張する機能」「配列の操作を拡張する機能」「DOMの操作に関する機能」について紹介いたします。 そして、最終的にはひとつの実用的なクラスを作ります。Prototype.jsをより使いこなすということを重視し、あまり使われない機能などは紹介しないこととします。 Prototype.jsのもっとも重要な機能は、オブジェクト指向に関連する機能です。「はじめに」でも述べたように、統一された方法でオブジェクト指向を書けるということが、オブジェクトの保守性を非常に良くしてくれるのです。 Prototype.jsでは、オブジェクト指向の代表的な機能として「クラス」と「継承」を提供しています。

  • サイ本要約 9章 クラスとコンストラクタとプロトタイプ - noire722 の日記

    9.1 コンストラクタ 記述例 function Rectangle(w, h){ this.width = w; this.height = h; // return文は記述しない } var rect1 = new Rectangle(2, 4); var rect2 = new Rectangle(8.5, 11); オブジェクトの生成方法 オブジェクトリテラルで{}と記述する ex.) var point = {x:0, y:0}; コンストラクタ関数を使う ex.) var today = new Date(); コンストラクタ関数とは オブジェクトのプロパティを初期化する関数 new演算子と一緒に使われる オブジェクトの"クラス*1"を定義するにはコンストラクタ関数を定義するだけでよい 通常、戻り値がない*2 thisとは 実行中のコード*3が「自分自身」を表すオブジェクトにア

    サイ本要約 9章 クラスとコンストラクタとプロトタイプ - noire722 の日記
  • 1