初心者の飛ぶ速いJavaScriptの対象、原型、継承(一)

3073 ワード

ある先輩は、JavaScriptの中ではすべて対象としていると言いました.これから分かるように、JavaScriptの核心の一つとして、対象はどんなに重要です.今日は親戚に行くのはちょっと疲れましたが、何日間がいいものを食べないように、この相手を書きます.また忘れてしまいます.
1.オブジェクトの作成
内蔵オブジェクトで作成:
var obj1 = new Object();
typeof obj1; // object

var obj2 = new Array();
typeof obj2; // object

var obj3 = new String();
typeof obj3; // object
文字数で作成:
var obj = {
    name: '  ',
    age: 22,
    msg: function() {
        console.log('  ' + this.name + ',  ' + this.age + ' 。');
    }
};
obj.msg(); //     ,  22 。
関数で作成:
JavaScriptに接触したばかりの友達にとって、前の2つの方法は非常に熟知しているかもしれませんが、この3つの方法にはちょっとなじみがないかもしれません.一つの問題について、私たちはその理由を知っています.だから、私もあまり使ったことがないですが、原因を調べてみました.
その理由は簡単です.関数によってオブジェクトを作成するのは、多重化のためであり、コードの大量反復を減らすためであり、例を挙げます.
私たちは暁と紅の二つのオブジェクトを作成したいです.字面量で作成すれば、次のようになります.
var xiaoming = {
    name: '  ',
    age: 22,
    hello: function() {
        console.log('   ,  :' + this.name);
    }
};
xiaoming.hello();

var xiaohong= {
    name: '  ',
    age: 20,
    hello: function() {
        console.log('   ,  :' + this.name);
    }
};
xiaohong.hello();
上から見れば、二つのオブジェクトは値が違っている以外は同じです.だから、私達は重複を避けるために、関数を通す方式を使う必要があります.それとも上の小明小紅に続くか:
function Person(name,age){
    this.name = name;
    this.age = age;
    this.hello = function() {
        console.log('   ,  :' + this.name);
    }
}
var xiaoming = new Person('  ',22);
xiaoming.hello();

var xiaohong = new Person('  ',20);
xiaohong.hello();
これはただの栗です.複雑な問題ほど効果があります.
関数によってオブジェクトを作成しますが、いくつかのパターンがあります.原型に関連しているので、後に置いて話します.
2.アクセス先の属性
var person = { 
    name:  '  ', 
    age: 26, 
    gender:  ' ',
 }; 
person.name; //         

var name2 = 'name';
person[name2] = '  '; //