最近、『JavaScript: The Good Parts』を読んでいます。これまでのところ、リラックスして楽しい時間を過ごしており、内容は非常に優れています。しかし、「継承」の章「パーツ
」に到達したとき、私は完全に唖然として、何のことを言っているのか分かりませんでした。ヒントや例をいくつか教えてください。次は章の内容です。
パーツ
パーツのセットからオブジェクトを構成できます。たとえば、任意のオブジェクトに単純なイベント処理機能を追加できる関数
を作成できます。これは on メソッド、
fire メソッドを追加します、およびプライベート イベント レジストリ:
任意のオブジェクトに対して偶発性を呼び出し、それにイベント処理を与えることができます
それが返される前にコンストラクター関数で呼び出すこともできます:
このようにして、コンストラクターはパーツのセットからオブジェクトを組み立てることができます。JavaScript の
緩やかな型付けは、クラスの系統を気にする
型システムに負担をかけないため、ここでは大きな利点となります。代わりに、コンテンツの文字
に焦点を当てることができます。
英語の「parts」は部品を意味しますが、その意味を正確に説明する方法はわかりません。大まかに言うと、複数の「パーツ」をいくつかのメソッドでオブジェクト上に組み合わせることができます。もちろん、コンストラクション関数では、それを簡略化するために
渡されるオブジェクトになりますthis
上。比如eventuality
で結合されます。 リーリー登録されたイベント(ハンドリング関数)を保存するために使用されます。もちろん、この関数はオブジェクトにイベント処理機能を追加します。
JSON へのシリアル化など、オブジェクトに追加する必要がある別の関数があるとします。つまり、現在のオブジェクトをthat
添加on()
和fire()
两个方法用于事件的注册和触发,而闭包变量registry
などの JSON 文字列にシリアル化する
次に、toJson()
メソッドを追加します。 リーリークラスがあります。このクラスは、独自の機能の一部に加えて、イベントと JSON 機能も必要とするため、これはコンストラクターで実行できます
最後の 2 つの文は、いわゆる構成部分になりますBoo
リーリー