标题:创建对象的困惑 望JS高手指点
只看楼主
mulder1985
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-9-25
 问题点数:0 回复次数:6 
创建对象的困惑 望JS高手指点
function Car(id){
  this.c = id;
  
    this.show = function(){
    alert(this.c);
    };

}

var a = new Car(1);
document.getElementById("aaa").onclick = a.show();
a.show();

如果用a.show()运行Car类正常运行 但输入用onclick alert(this.c)为undefine类型并没有被id变量赋值 我想可能是指针引用没有从Car类开始 只调用了function  望高手指点 如何能让alert(this.c)为我设置id的值
搜索更多相关主题的帖子: 对象 困惑 
2008-09-25 11:09
BOSS级菜鸟
该用户已被删除
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-09-25 17:44
BOSS级菜鸟
该用户已被删除
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-09-25 17:47
mulder1985
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-9-25
得分:0 
回复 2# BOSS级菜鸟 的帖子
上面那个document.getElementById("aaa").onclick = a.show; 是笔误  您下面这个我明白了 太感谢了 :)
2008-09-26 09:48
aaa121914
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-9-27
得分:0 
这样定义试试,

Car.prototype.show=function(){
   alert(this.c)

}
2008-09-27 20:27
hugeannex
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:477
专家分:911
注 册:2005-3-20
得分:0 
错了几个地方,不懂怎么说了,自己看答案吧。
function Car(d){
  this.c = d;  
    this.show = function("alert("+this.c+");")
    }
}
var a = new Car(1);
onload=function(){
   document.getElementById("aaa").onclick = a.show;
}

世事如潮我如水,只叹江湖几人回。
2008-10-05 00:56
frankqnj
Rank: 4
等 级:贵宾
威 望:12
帖 子:320
专家分:278
注 册:2008-4-6
得分:0 
很明显 犯了 作用域 和闭包的错误
2008-10-05 01:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-235099-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.229586 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved