alert(btn.onclick)显示如下:
function anonymous()
{
alert(this.id)
}
//这里的this表示btn这个对象,不是anonymous。this.item[this,items.length]=item
//this仍然是自身不是上级。最后的那个效果一样,但是后边的标准。
function anonymous()
{
alert(this.id)
}
//这里的this表示btn这个对象,不是anonymous。this.item[this,items.length]=item
//this仍然是自身不是上级。最后的那个效果一样,但是后边的标准。
this.item[this,items.length]=item 指的是上级,调用它的对象mMenu. 我都是这么用的。
我就是发现这儿有这个问题,才来问题。请看我的代码。function mainMenu(img,capture,hrefurl){
this.items=new Array();
this.img=img;
this.capture=capture;
this.hrefurl=hrefurl;
} function addSub(item){
this.items[this.items.length]=item;
}function subMenu(img,capture,hrefurl,target){
this.img=img;
this.capture=capture;
this.hrefurl=hrefurl;
this.target=target;
}mainMenu.prototype.addSub=addSub;var myMenu=new mainMenu('#','收藏家','#')
mysub=new subMenu('#','#','#','blank')
myMenu.addSun(mysub);alert(myMenu.items.length);所以function addSub(item){
this.items[this.items.length]=item;
}
//此处的this 指的时上级mMenu,即调用者。//如果桌this值的时其 caller,
那上面 1、2 做何解释???
this永远指向“调用者”
//mainMenu对象的items[]中第this.items.length个元素赋值为item有什么难理解的吗?由于addSub是mainMenu对象的方法,所以这里的this自然指mainMenu对象
{
// 用正则表达式将前后空格
// 用空字符串替代。
return this.replace(/(^\s*)|(\s*$)/g, "");
}此处的 this 指 String<script>
alert(this.name) //此处 this 指的是 window .I know.
</script>如此就可以这样理解:
在对象中,this 代表这个对象本身
在方法中,this代表调用该方法的对象是这样的吗???清明示
那对于 mainMenu 这个对象,其调用这又是谁呢?是其本身??
那对于 mainMenu 这个对象,其调用这又是谁呢?是其本身??对啊,因为使用的时候要new mainMenu
myMenu.img="aaaaa";
myMenu.capture="bbbbb";
myMenu.hrefurl="#"==myMenu=new mainMenu("aaaaa","bbbbb",##) //new 调用该构造器。因该说此处调用这还是myMenu ,对吗?
alert(myDate.constructor);//constructor=Date 即构造器、此处,mainMenu 也是一个构造器。用构造器构造器实例(即 对象)大概也可以成为初始化过程吧
http://devedge.netscape.com/library/manuals/2000/javascript/1.5/guide/obj2.html
http://expert.csdn.net/Expert/TopicView1.asp?id=1265016
http://expert.csdn.net/Expert/TopicView1.asp?id=1240386
http://expert.csdn.net/Expert/TopicView1.asp?id=1251485
http://expert.csdn.net/Expert/TopicView1.asp?id=1247222
http://expert.csdn.net/Expert/TopicView1.asp?id=1245347
......