我收到以下错误
无法获取未定义或空引用的属性'showMsg'
在下面代码的最后一行:
Function.prototype.showMsg = function () {
alert("This is a sample message.");
};
function Person() {
this.name = "Mahesh";
};
var personObj = new Person();
personObj.prototype.showMsg();
实际上我应该可以从showMsg()
实例访问Person
,因为我已将其添加到Function.prototype
。那我为什么会收到这个错误?
答案 0 :(得分:1)
嗯,你明白这一切都错了
Function.prototype.showMsg = function () {
alert("This is a sample message.");
};
function Person() {
this.name = "Mahesh";
};
var personObj = new Person();
personObj.prototype.showMsg();
首先,您将函数类原型化,然后创建一个名为Person的自定义类,然后创建Person的实例。然后你调用的是非常蓝色的打印,这是showMsg,这是2个错误1 showMsg没有被限制在Person中然后调用它如果它有界你直接调用它就像这样
personObj.showMsg()
如果我让你写,我将从我的观点开始使这个脚本工作 像这样写 - >
function Person() {
this.name = "Mahesh";
};
Person.prototype.showMsg = function () {
alert("This is a sample message.");
};
var personObj = new Person();
personObj.showMsg();
我的脚本将showMsg直接绑定到Person类,如果你需要它通过Person对象并通过Function Class To那么你必须继承Function Class Like This
Function.prototype.showMsg=function () {
alert("This is a sample message.");
};
function Person() {
this.name = "Mahesh";
};
Person.prototype = Function;
Person.prototype.constructor = Person;
var personObj = new Person();
personObj.showMsg();
此致