JavaScript创建对象的方式汇总

1.Object构造函数创建

            // 1.Object构造函数创建
            var Obj = new Object();
            Obj.name='saoge';
            Obj.say=function(){
                console.log(`我的名字是${this.name}`)
            }
            Obj.say();

2.使用对象字面量表示法

            //2. 使用对象字面量表示法
            var Obj={
                name:'saoge',
                age:18,
                say(){
                    console.log(`我的名字是${this.name},年龄是${this.age}`)
                }
            }
            Obj.say();

3.使用构造函数创建对象

            //3.使用构造函数创建对象
            function Obj(name,age){
                this.name=name;
                this.age=age;
                this.say=function(){
                    console.log(`我的名字是${this.name},我的年龄是${this.age}`)
                }
            }
            var objone = new Obj('saoge',18);
            objone.say();

4.原型链创建对象

            //4.原型链创建对象
            function Obj(){}
            Obj.prototype.name='saoge';
            Obj.prototype.age=18;
            Obj.prototype.say=function(){
                console.log(`我的名字叫${this.name},我今年${this.age}岁`)
            }
            var objone=new Obj();
            objone.say();

5.构造函数和原型混用

            //5.构造函数和原型混合使用
            function Obj(name){
                this.name='name';
            }
            Obj.prototype.age=18;
            Obj.prototype.say=function(){
                console.log(`我叫${this.name},我今年${this.age}岁`)
            }
            var objone=new Obj('soage');
            objone.say();

6.工厂模式

            //6.工厂模式
            //工厂模式使用较少,但是也需要了解
            function createObj(name){
                var obj = new Object();
                obj.name = name;
                obj.say=function(){
                    console.log(`我的名字叫${this.name}`)
                }
                return obj;
            }
            var objone = createObj('saoge');
            objone.say();

7.class创建对象

            // 7.class创建对象
            class Obj{
                constructor(name,age) {
                    this.name=name;
                    this.age=age;
                }
                say(){
                    console.log(`我的姓名是${this.name},我的年龄是${this.age}`)
                }
            }
            var objone = new Obj('saoge',18);
            objone.say();

只是简单的将所有方法汇总了一下,在忘记的时候看一眼能够很快的想起来。

原文地址:https://www.cnblogs.com/elink/p/13715478.html