|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
按照提示,完成代码,秀秀你的编程能力!
不许看答案,否则打屁屁
分析:
上一个挑战介绍了向duck对象引入一个method。它使用duck.name的点符号来访问return语句中的name属性的值:
sayName:function(){return"这个鸭子的名字是"+ duck.name +".";}
虽然这是访问对象属性的有效方法,但这里存在一个缺陷。如果变量名称更改,则引用原始名称的所有代码都需要更新。在一个简短的对象定义中,它不是问题,但是如果一个对象有很多对它的属性的引用,就有很大的几率产生错误。
避免这些问题的方法是使用this关键词:
- let duck = {
- name:"Aflac",
- numLegs:2,
- sayName:function(){return"这个鸭子的名字是"+ this.name +".";}
- };
复制代码
this是一个很深的话题,上面的例子只是一种使用它的方式。
在当前的语境中,this是指与方法相关联的对象:duck。
如果对象的名称更改为mallard,则无需在代码中找到所有对duck的引用。它使代码可复用并易于阅读。
I Need U:
修改dog.sayLegs方法以删除对dog的所有引用。使用上面的duck示例进行指导。
答案:
回顾:
如果喜欢,请订阅 :
|
|