js対象向け-原型

1256 ワード

公式の定義:prototype属性は、オブジェクトに属性と方法を追加することができます.
プロトタイプ、プロトタイプ法設計モード:作成対象の種類をプロトタイプの例で指定し、これらのプロトタイプをコピーすることで新たなオブジェクトを作成します.
NETではICloneableインターフェースClone法を実現し,原型を実現した.
原型法の主な思想:今はA類があります.B類を作りたいです.B類はA類をモデルとしています.そして、拡張できます.Bの原型はAです.
対象に向かう継承思想をシミュレートします.
JavaScriptの中で:functionは関数としてもいいし、クラスとしても使えます.
JavaScriptの方法は三つの種類に分けられます.種類方法、対象方法、プロトタイプ(拡張)方法
Demo 1:拡張Arayオブジェクト方法->整形配列の最大値を取得します.
function GetArrayMax() {
    var max = this[0];
    for (x in this)
    {
        if (this[x] > max)
            max = this[x];
    }
    return max;
}
Array.prototype.GetMax = GetArrayMax;
var arr = [5, 7, 1, 3, 6, 9, 8, 2];
alert(arr.GetMax());
Demo 2:アナログ対象継承
function Animal() {
    this.name = name;
    this.Sound = function () { }
}
function Dog() { }
//Dog    Animal,  Animal,     (  )      
Dog.prototype = new Animal();
var dog = new Dog();
dog.name = "   ";
dog.Sound = function () {
    alert("wangwangwang");
}
各javascript関数にはprototype属性があります.jsエンジンはまずnewキーワードに出会った後、すぐに開いたメモリ空間に空白のオブジェクトを作成して、thisをこのオブジェクトに向けました.
続いてコンストラクタAnimalを実行してこの空のオブジェクトを構成します.コンストラクタの中には何がありますか?このオブジェクトに一つずつ組み立てられます.これはいわゆるコンストラクタです.