阅读量:0
在JavaScript中,每个函数都有一个prototype属性,它可以用来给函数的实例对象添加属性和方法。具体来说,可以通过给函数的prototype属性赋值来为该函数的实例对象添加属性和方法。
例如,我们可以通过如下方式定义一个构造函数和为其添加方法:
function Person(name, age) { this.name = name; this.age = age; } // 为Person构造函数的实例对象添加一个greet方法 Person.prototype.greet = function() { console.log("Hello, my name is " + this.name); }; // 创建Person构造函数的实例 var person1 = new Person("Alice", 25); var person2 = new Person("Bob", 30); // 调用实例对象的greet方法 person1.greet(); //输出:Hello, my name is Alice person2.greet(); //输出:Hello, my name is Bob
在上面的例子中,我们定义了一个构造函数Person,并通过给其prototype属性赋值来为其实例对象添加了一个greet方法。通过创建Person构造函数的实例对象,并调用实例对象的greet方法,我们可以看到每个实例对象都可以访问到这个方法。
需要注意的是,通过prototype添加的属性和方法是共享的,即所有该构造函数的实例对象都会共享这些属性和方法。