Javascript 在对象值上循环按预期工作,但第一个值未定义?
有人能解释一下为什么第三个按钮上的objectInfo方法返回第一个未定义的值吗 我不知道这是从哪里来的,因为在name之前没有属性 你能帮忙吗?我错过什么了吗 致以最良好的祝愿,Javascript 在对象值上循环按预期工作,但第一个值未定义?,javascript,oop,Javascript,Oop,有人能解释一下为什么第三个按钮上的objectInfo方法返回第一个未定义的值吗 我不知道这是从哪里来的,因为在name之前没有属性 你能帮忙吗?我错过什么了吗 致以最良好的祝愿, shapeshifta这是因为循环最初是未定义的,而您正在调用+=,因此它会转换为字符串,要修复它,请更改以下内容: var loop; 为此: var loop = ""; .@shapeshifta-如果有帮助,我还得做两次检查,看看是什么原因造成的:)有点帮助,伙计:)小心点!除了循环,还有一个非常奇怪的对
shapeshifta这是因为
循环
最初是未定义的
,而您正在调用+=
,因此它会转换为字符串,要修复它,请更改以下内容:
var loop;
为此:
var loop = "";
.@shapeshifta-如果有帮助,我还得做两次检查,看看是什么原因造成的:)有点帮助,伙计:)小心点!除了循环,还有一个非常奇怪的对象模型。这就像使用非原型实例一样,将
toString
和speak
的新副本分别添加到每个实例,并对构造函数参数保持闭包。但是你可以使用this.
来访问这些参数,并且有一个奇怪的默认值--employee
对象作为employee
本身的原型,这个原型永远不会做任何事情,因为它的每个成员都被实例所隐藏。