为什么这里面的m方法可以这么写

laomokuyite 2017-08-29 10:38:52
为什么这里面m方法可以这样调用,用m:function的形式来表示
...全文
102 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
当作看不见 2017-08-29
  • 打赏
  • 举报
回复
JavaScript是支持函数是编程的,函数是第一等公民 函数本身就是变量的一种类型 [Function Object] 那么声明一个变量 O ,设置属性m 为一个函数,有何不可. 注意这里函数里面引用了this ,也就是this 指向O ,这是面向对象的做法
laomokuyite 2017-08-29
  • 打赏
  • 举报
回复
代码如下:

var o = {
m: function() {
var self = this;
console.log(this === o);
f();
function f() {
console.log(this === o);
console.log(self === o);

}
}
};
wangdan_2013 2017-08-29
  • 打赏
  • 举报
回复
楼上的说的很详细,你的m:function是在O对象的属性和方法,在对象中的方法就是一个属性名 : 方法,这样的格式,并不存在什么问题,你可以在w3cschool或者js高级程序设计一书中,发现很多的例子,多学习吧

87,990

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧