写了一个对象,定义了对象的属性和方法,对象本身方法如何调用呢。

tcmis 2014-08-29 04:12:28

var Obj = function(p1, p2){
this.P1 = p1;
this.P2 = p2;
}

Obj.prototype = {
f1 : function(){
alert("f1");
}

f2 : function(){
// 我这里想调用f1函数,怎么调用都没有反应, 没有显示提示消息f1啊, 这里如何调用f1函数
this.f1();
}
}


请大侠指点一下, 谢谢
...全文
245 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Hack-Magic 2014-08-31
  • 打赏
  • 举报
回复
话说用了这么久js我也没有用过js new对象 只用过json
qq_20205613 2014-08-30
  • 打赏
  • 举报
回复
cwz3323 2014-08-29
  • 打赏
  • 举报
回复
你那么写已经调用f1了 是没调用f2而已 var t = new Obj(); t.f2();
别闹腰不好 2014-08-29
  • 打赏
  • 举报
回复
var Obj = function(p1, p2){ this.P1 = p1; this.P2 = p2; } Obj.prototype.dddd = { f1 : function(){ alert("f1"); }, f2 : function(){ // 我这里想调用f1函数,怎么调用都没有反应, 没有显示提示消息f1啊, 这里如何调用f1函数 this.f1(); } } var s =new Obj(); s.dddd.f2();
别闹腰不好 2014-08-29
  • 打赏
  • 举报
回复
var Obj = function(p1, p2){ this.P1 = p1; this.P2 = p2; this.dddd = { f1 : function(){ alert("f1"); }, f2 : function(){ // 我这里想调用f1函数,怎么调用都没有反应, 没有显示提示消息f1啊, 这里如何调用f1函数 this.f1(); } } } var s =new Obj(); s.dddd.f2();
functionsub 2014-08-29
  • 打赏
  • 举报
回复
你的obj是一个类,而不是实例化的具体对象。 如果你实在要调用那就obj.prototype.f2()吧。
别闹腰不好 2014-08-29
  • 打赏
  • 举报
回复
var Obj = function(p1, p2){ this.P1 = p1; this.P2 = p2; } Obj.prototype.dddd = { f1 : function(){ alert("f1"); }, f2 : function(){ // 我这里想调用f1函数,怎么调用都没有反应, 没有显示提示消息f1啊, 这里如何调用f1函数 Obj.prototype.dddd.f1(); } } var s =new Obj(); s.dddd.f2();
别闹腰不好 2014-08-29
  • 打赏
  • 举报
回复
Obj.prototype = {   f1 : function(){     alert("f1");   }     f2 : function(){     // 我这里想调用f1函数,怎么调用都没有反应, 没有显示提示消息f1啊, 这里如何调用f1函数    Obj.f1();  } }
tcmis 2014-08-29
  • 打赏
  • 举报
回复
楼上老大, 如何能严谨点, 给个DEMO。。。我也是才接触js的这种写法, 以前就全部写成function去实现, 看到别人用这样的方式,感觉代码比较清晰。。。所以想改进一下我的code.,希望指点一下, 谢谢。
zhjdg 2014-08-29
  • 打赏
  • 举报
回复
当你把Obj当做class用的时候。 class Obj{} 就= Obj.prototype. 既然Obj是class,class怎么会在没有实例化的时候使用。 当然你可把他当做namespace使用。但是意义就没了。 反正就是不严谨,千变万化。

87,910

社区成员

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

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