理解javascript中函数对对象的赋值
大家好,第一次在这里发帖 因此,我试图理解一些东西,我也将在这里发布代码,但如果您想查看源代码,则如下“” 这是codeacademy的一个练习 因此有理解javascript中函数对对象的赋值,javascript,Javascript,大家好,第一次在这里发帖 因此,我试图理解一些东西,我也将在这里发布代码,但如果您想查看源代码,则如下“” 这是codeacademy的一个练习 因此有bob.setAge=setAge,为什么它不这样做呢bob.setAge=newAge?? 这是代码 var setAge = function (newAge) { this.age = newAge; }; // now we make bob var bob = new Object(); bob.age = 30; bob.setA
bob.setAge=setAge代码>,为什么它不这样做呢bob.setAge=newAge代码>??
这是代码
var setAge = function (newAge) {
this.age = newAge;
};
// now we make bob
var bob = new Object();
bob.age = 30;
bob.setAge = setAge;
// make susan here, and first give her an age of 25
var susan = new Object();
susan.age=25;
susan.setAge = setAge;
// here, update Susan's age to 35 using the method
susan.setAge(35);
我相信这个练习是想教你JavaScript中面向对象编程的基本原理,而不需要语法糖
更简单地说,他们正在创建一个person
,并且person
可以有一组描述他们的属性,以及他们可以执行的一组操作
您已经在这里创建了名为setAge
var setAge = function (newAge) {
this.age = newAge;
};
它将this
的年龄设置为newAge
。但这里的问题是这是什么?答案是这要视情况而定,这就是为什么可以重用此函数的原因
所以当你“做鲍勃”
你所做的是说,bob
有一个他可以做的动作,叫做setAge
,这个动作相当于我们前面定义的函数setAge
。同样在本上下文中,此
指的是bob
因此,当您执行类似于bob.setAge(20)
的操作时,bob.age
,由表示,this.age
将从30
更改为20
这有意义吗
在你的链接中还有这个报价
太好了!现在我们可以利用这样一个事实,即方法设置不限于单个对象
无论是bob还是susan,如果将其分配给对象,则始终可以使用上面定义的相同的设置
函数。设置
是一个函数。。。稍后您可以调用它bob.setAge(30)
.bob.setAge=setAge将对象的setAge方法定义为函数setAge,之后可以调用该方法并将一个值作为参数传递。不确定为什么会关闭-问题非常清楚。是的,我现在理解了。谢谢。。。。尝试学习java脚本有时会让人困惑,但快速的回答真的很感谢再次感谢是的,没问题。很高兴我能在他们关门前得到答复。他们可能对这里的新程序员非常不友好:/i我是新来的,我甚至不知道他们为什么关闭它:o。就像我10分钟前刚刚创建了我的帐户,然后添加了我的问题。@Munkiuke问题是你写了,试图理解这在javascript中是如何工作的,这不是一个很有描述性的标题。我对它进行了编辑以使它更清晰,但似乎为时已晚。下次试着让你的标题更具体一点。好吧,我现在明白了。谢谢,下次我会尽量在标题中说清楚。这(暂停)是什么意思?
// now we make bob
var bob = new Object();
bob.age = 30;
bob.setAge = setAge;