乐鱼电竞






  • 教育行业A股IPO第一股(股票代码 003032)

    全国咨询/投诉热线:400-618-4000

    Javascript创建对象的方式有哪些?

    更新时间:2021年05月21日11时48分 来源:乐鱼电竞 浏览次数:

    Javascript创建对象的方式有哪些?下面介绍javascript中最常用的创建对象的六种方式。

    1、简单对象的创建使用对象字面量的方式{}创建一个对象(最简单,好理解,推荐使用)

    代码如下

    var Cat = {};	//JSON
    Cat.name="kity";	//添加属性并赋值
    Cat.age=2;
    Cat.sayHello=function(){
    	alert("hello "+Cat.name+",今年"+Cat["age"]+"岁了");	//可以使用“.”的方式访问属性,也可以使用 HashMap 的方式访问
    }
    Cat.sayHello();	//调用对象的(方法)函数

    2、用 function(函数)来模拟 class

    2.1)创建一个对象,相当于 new 一个类的实例(无参构造函数)

    代码如下

    function Person(){
    }
    var personOne=new Person();	//定义一个 function,如果有 new 关键字去"实例化",那么该 function 可以看作是一个类
    personOne.name="dylan";
    personOne.hobby="coding";
    personOne.work=function(){
    	alert(personOne.name+" is coding now...");
    }
    personOne.work();

    2.2)可以使用有参构造函数来实现,这样定义更方便,扩展性更强(推荐使用)

    代码如下

    function Pet(name,age,hobby){
    	this.name=name;	//this 作用域:当前对象
    	this.age=age;
    	this.hobby=hobby;
    	this.eat=function(){
    	alert("我叫"+this.name+",我喜欢"+this.hobby+",也是个吃货");
    	}
    }
    var maidou =new Pet("麦兜",5,"睡觉");	//实例化/创建对象
    maidou.eat();	//调用 eat 方法(函数)

    3、使用工厂方式来创建(Object关键字)

    代码如下:

    var wcDog =new Object();
    wcDog.name="旺财";
    wcDog.age=3;
    wcDog.work=function(){
    	alert("我是"+wcDog.name+",汪汪汪......");
    }
    wcDog.work();

    4、使用原型对象的方式prototype关键字

    代码如下:

    function Dog(){
    }
    Dog.prototype.name="旺财";
    Dog.prototype.eat=function(){
    	alert(this.name+"是个吃货");
    }
    var wangcai =new Dog();
    wangcai.eat();

    5、混合模式(原型和构造函数)

    代码如下:

    function Car(name,price){
    	this.name=name;
    	this.price=price;
    }
    Car.prototype.sell=function(){
    	alert("我是"+this.name+",我现在卖"+this.price+"万元");
    }
    var camry =new Car("凯美瑞",27);
    camry.sell();

    6、动态原型的方式(可以看作是混合模式的一种特例)

    代码如下:

    function Car(name,price){
    	this.name=name;
    	this.price=price;
    	if(typeof Car.sell=="undefined"){
    		Car.prototype.sell=function(){
    			alert("我是"+this.name+",我现在卖"+this.price+"万元");
    		}
    		Car.sell=true;
    	}
    }
    var camry =new Car("凯美瑞",27);
    camry.sell();

    以上几种,是 javascript 中最常用的创建对象的方式

    好口碑IT培训



    猜你喜欢:

    js中的原型(prototype)是什么?如何理解?

    js如何将json字符串转换为json对象?

    JS中的对象是什么?它有哪些属性和变量?

    乐鱼电竞HTML&JS+前端培训课程

    0 分享到:
    和我们在线交谈!
    【网站地图】【sitemap】