JavaScript 常见创建对象的方式

Posted Mahmud

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript 常见创建对象的方式相关的知识,希望对你有一定的参考价值。

javascript 有哪几种创建对象的方式?

 

 

javascript创建对象简单的说,无非就是使用内置对象或各种自定义对象,当然还可以用JSON;但写法有很多种,也能混合使用。


(1)对象字面量的方式

person={firstname:"Mark",lastname:"Yun",age:25,eyecolor:"black"};

 

(2)用function来模拟无参的构造函数function Person(){}

 


var person = new Person(); //定义一个function,如果使用new"实例化",该function可以看作是一个Class
person.name = "Xiaosong";
person.age = "23";
person.work = function() {
alert("Hello " + person.name);
}
person.work();

 

(3)用function来模拟参构造函数来实现(用this关键字定义构造的上下文属性)

 

function Person(name,age,hobby) {
this.name = name; //this作用域:当前对象
this.age = age;
this.work = work;
this.info = function() {
alert("我叫" + this.name + ",今年" + this.age + "岁,是个" + this.work);
}
}
var Xiaosong = new Person("WooKong",23,"程序猿"); //实例化、创建对象
Xiaosong.info(); //调用info()方法

 

 

(4)用工厂方式来创建(内置对象)

 

function Person(name,age,hobby) {
this.name = name; //this作用域:当前对象
this.age = age;
this.work = work;
this.info = function() {
alert("我叫" + this.name + ",今年" + this.age + "岁,是个" + this.work);
}
}
var Xiaosong = new Person("WooKong",23,"程序猿"); //实例化、创建对象
Xiaosong.info(); //调用info()方法

 

(5)用原型方式来创建

 

function Standard(){}
Standard.prototype.name = "ECMAScript";
Standard.prototype.event = function() {
alert(this.name+"是脚本语言标准规范");
}
var jiaoben = new Standard();
jiaoben.event();

 

(6)用混合方式来创建

 

function iPhone(name,event) {
this.name = name;
this.event = event;
}
iPhone.prototype.sell = function() {
alert("我是"+this.name+",我是iPhone5s的"+this.event+"~ haha!");
}
var SE = new iPhone("iPhone SE","官方翻新机");
SE.sell();

 

以上是关于JavaScript 常见创建对象的方式的主要内容,如果未能解决你的问题,请参考以下文章

js-JavaScript常见的创建对象的几种方式

js-JavaScript常见的创建对象的几种方式

Javascript之《创建对象》

原创整理,基于JavaScript的创建对象方式的集锦

JavaScript创建对象的默认方式:组合使用构造函数模式和原型模式

JavaScript 进阶 - 0基础第二天