ES5中的对象创建方式及其区别

1. 构造函数


构造函数是一种创建对象的方式,通过使用new关键字和一个函数来创建对象。


function Person(name, age) {
    this.name = name;
    this.age = age;
}

var person1 = new Person('Tom', 20);
console.log(person1);

在上面的代码中,我们定义了一个名为Person的构造函数,并使用new关键字创建了一个名为person1的对象。这个对象具有name和age属性,分别被赋值为'Tom'和20。


2. 对象字面量


对象字面量是一种直接创建对象的方式,使用花括号{}来定义对象,并在花括号内部使用键值对的形式定义属性和对应的值。


var person2 = {
    name: 'Jerry',
    age: 22
};
console.log(person2);

在上面的代码中,我们使用对象字面量创建了一个名为person2的对象。这个对象也具有name和age属性,分别被赋值为'Jerry'和22。


3. Object.create()


Object.create()是一种基于指定的原型对象创建新对象的方式。我们先定义一个原型对象,然后使用Object.create()方法以该原型对象为参数创建新对象。


var person3 = {
    name: 'Bob',
    age: 25
};

var person4 = Object.create(person3);
console.log(person4);

在上面的代码中,我们首先定义了一个原型对象person3,然后使用Object.create()方法以person3为参数创建了一个新对象person4。这个新对象继承了person3的所有属性和方法。


通过以上三种方式,我们可以灵活地创建对象,根据实际需求选择合适的方式。

猿教程
请先登录后发表评论
  • 最新评论
  • 总共0条评论