1. 程式人生 > >js中創建對象的5種方法

js中創建對象的5種方法

func 模式 div style win function col cti .proto

1、原始模式

var  dog  =    {
    name: jack,
    length: 70,
    wang:function(){
        console.log(this.name);
    }

2、工廠模式(批量)

function  creatdog  (name,length) {
    var  moudle  =   new  object ();
    dog.name=name;
    dog.length=length;
    dog.wang=function(){
        console.log(this.name);
    };
    
return moudle; }

3、構造函數

function  Dog (name,length) {
    this.name=name;
    this.length=length;
    this.wang=function() {
        console.log(this.name);
    };
}
var dog1 = new Dog( ‘wangcai‘ , 80) //創建一個dog1對象

Dog(‘wangcai‘, 80);    //屬性方法都給window對象,window.name=‘wangcai‘,window.wang()會輸出wangcai

4、原型模式

function  Dog () {}
Dog.prototype.name = ‘wangcai‘;
Dog.prototype.length=80;
Dog.prototype.wang= function () {
    console.log(this.name);
};

var  dog1 = new Dog();
// dog1:name:‘wangcai‘;length:80;f:wang()

5、混合模式

function Dog (name, length) {
 
    this.name = name;
 
    this.length = length;
 
}
 
Dog.prototype 
= { hobby: [‘running‘,‘eat‘]; wang: function () {
    console.log(this.name);
   } };
var dog1 = new Dog(‘wangcai‘, 80); //dog1:‘wangcai‘,80; __proto__: [‘running‘,‘eat‘],wang var dog2 = new Dog(‘defu‘, );70 //dog2:‘defu‘,70;__proto__: [‘running‘,‘eat‘],wang

js中創建對象的5種方法