gpt4 book ai didi

javascript - 基本对象/原型(prototype)语法问题

转载 作者:行者123 更新时间:2023-11-30 08:57:30 25 4
gpt4 key购买 nike

有人可以弄清楚我的代码有什么问题吗?我完全是个新手,只是想尝试如何创建对象、原型(prototype),以及 this 命令在原型(prototype)上下文中指的是什么。但是,我的代码都不适用于 jFiddle。我知道这段代码完全没有意义,但我只是想找出文档在各种情况下打印的内容,以便更具体地了解对象、原型(prototype)、构造函数和“this”关键字的工作原理。但是什么都没有出现!

function Person(identity) {
this.identity = "fellow";
this.logYou = function() {
document.write('hi');
};
};
Person.prototype.logMe = function() {
document.write(this.identity);
};

var Dude = new Person("stud");

Person.logYou();
Person.logMe();
Dude.logMe();

最佳答案

function Person() {
this.identity = "fellow";
this.logYou = function() {
document.write('hi');
};
};

当您调用 this.identity = "fellow"; 时,this 关键字引用函数运行的上下文
因此,如果您在全局范围内调用该函数,this 指的是 window 对象:

Person();
alert(window.identity); // fellow

如果实例化该函数,this 关键字引用新对象:

var Dude = new Person();
alert(Dude.identity); // fellow

因此函数Person 没有属性identity
如果你想为你的功能提供一些属性:

Person.identity = "fellow";
alert(Person.identity); // fellow

关于javascript - 基本对象/原型(prototype)语法问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12230004/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com