JavaScript---对象

对象创建模式

创建对象的五种方式

  1. 使用Object构造函数
  2. 使用{}创建
  3. 使用工厂创建
  4. 使用构造函数创建
  5. 使用构造函数加原型创建

Object构造函数创建

优点:灵活性好,使用于对象属性不确定的情况
缺陷:语句太多,杂乱

 var p = new Object()
        p.name = "tom"
        p.age = 12
        p.setName = function (name) {
            this.name = name
        }

使用{}创建

优点:使用于对象确定的情况
缺点:每创建一个对象,都需要这样写,代码冗余

  var per = {
            name:'bob',
            age:13,
            setName:function (name) {
                this.name = name
            }
        }

使用工厂创建对象

优点:利用工厂方法可创建多个对象。
缺点:创建的对象的类型模糊,都是Object类型

function creat(name,age){
            var obj = {
                name:name,
                age:age,
                setName:function (name) {
                    this.name = name
                }
            }
            return obj
        }
        var person = creat("hhh",88)
        console.log(person.name)

使用构造函数创建

优点:利用构造函数可创建多个对象。
缺点:但是产生了方法冗余。每个对象都有一样的方法

function Fun(name,age) {
            this.name = name
            this.age = age
            this.setName = function (name) {
                this.name = name
            }
        }
        var p2 = new Fun("yyy",33)
        console.log(p2.age)

构造函数加原型创建

避免了构造函数创建的对象的缺点,节省内存空间

function Fun(name,age) {
            this.name = name
            this.age = age
        }
        Fun.prototype.setName = function (name) {
            this.mame = name
        }
        var p2 = new Fun("yyy",33)
        console.log(p2.age)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章