当初步了解 JavaScript 面向对象时,可以按照以下步骤进行:
1. 理解对象的概念及创建对象的基本方法
在 JavaScript 中,对象是指一组属性的集合,属性可以是简单的值、函数和其他属性等。
创建对象有多种方法,可以使用对象字面量、构造函数、Object.create() 等方式,具体可以参考下面的示例:
对象字面量
使用对象字面量创建对象,可以通过直接定义属性和属性值的方式来创建。
const person = {
name: '张三',
age: 18,
sayHello: function() {
console.log('大家好,我叫' + this.name + ',今年' + this.age + '岁了!');
}
};
构造函数
使用构造函数创建对象,首先需要定义一个构造函数,然后通过 new 关键字来调用构造函数创建对象。
function Person(name, age) {
this.name = name;
this.age = age;
this.sayHello = function() {
console.log('大家好,我叫' + this.name + ',今年' + this.age + '岁了!');
}
}
const person = new Person('张三', 18);
Object.create()
使用 Object.create() 创建对象,首先需要定义一个原型对象,然后通过 Object.create() 方法来创建对象。
const personProto = {
sayHello: function() {
console.log('大家好,我叫' + this.name + ',今年' + this.age + '岁了!');
}
};
const person = Object.create(personProto);
person.name = '张三';
person.age = 18;
2. 学习构造函数与原型的关系及其使用方法
JavaScript 的对象可以使用构造函数与原型的方式来实现继承和代码复用。
构造函数是用于创建对象的函数,在构造函数中定义的属性和方法会作为对象自身的属性和方法。而原型是对象的一个属性,可以理解为对象的一种模板,定义在构造函数上的属性和方法则会被所有通过该构造函数创建的对象所共享。
下面是一个简单的示例,演示了如何定义构造函数和原型,并使用它们来创建对象并实现继承和复用。
function Animal(name) {
this.name = name;
}
Animal.prototype.sayHello = function() {
console.log('我叫' + this.name + ',是一只动物。');
};
function Dog(name) {
Animal.call(this, name); // 继承父类的属性
}
Dog.prototype = Object.create(Animal.prototype); // 继承父类的方法
Dog.prototype.sayHello = function() {
console.log('我叫' + this.name + ',是一只狗。');
};
const animal = new Animal('小狗');
animal.sayHello(); // 输出:我叫小狗,是一只动物。
const dog = new Dog('旺财');
dog.sayHello(); // 输出:我叫旺财,是一只狗。
在上面的示例中,Animal 和 Dog 都是构造函数,Animal 是父类,而 Dog 是子类。Animal 定义了 sayHello 方法,在其原型上,Dog 继承了该方法,并重写了该方法达到复用的效果。同时,Dog 也继承了 Animal 的属性 name,这是通过调用 Animal 构造函数来实现的。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:初步了解javascript面向对象 - Python技术站