面试题答案
一键面试- 构造函数定义方式:
在JavaScript中,构造函数本质上就是一个普通函数,但它使用
new
关键字来调用,以创建对象实例。构造函数通常遵循首字母大写的命名约定。例如:
function Person() {
// 函数体
}
-
构造函数内部
this
的指向规则: 当使用new
关键字调用构造函数时,this
指向新创建的对象实例。如果没有使用new
关键字调用构造函数,那么this
的指向取决于函数的调用方式,在非严格模式下,全局函数调用时this
指向全局对象(浏览器中是window
);在严格模式下,全局函数调用时this
为undefined
。 -
示例代码:
function Person(name, age) {
this.name = name;
this.age = age;
}
// 创建两个实例
const person1 = new Person('Alice', 30);
const person2 = new Person('Bob', 25);
// 访问实例的属性
console.log(person1.name);
console.log(person1.age);
console.log(person2.name);
console.log(person2.age);