关于this 的疑惑!
首先感谢骆驼大哥多我原来发的一个贴自得指教。悉已明白。在此谢过。下面还有一个东西不太明白,希望得到大家的支持。
已经明白。谢谢大哥!骆驼大哥,还有个东西问一下你,就是那个this.我用过很多次,但发现其含义还是有些模糊。希望得到你的指教:以下几种情况好像其含义都不一样:
1、构造函数时
function mMenu(caption,href,img)
{
this.items=new Array();
this.caption=caption;
this.href=href;
this.img=img;
}
//此处,this代表mMenu 这个对象本身,
//这个最常用,明白
2
<button onclick="alert(this.id)" id="btn">test1</button> /*/此处代表 代表button 本身这个对象。这个也很常用,知道用法*/
alert(btn.onclick)
显示如下:
function anonymous()
{
alert(this.id)
}
/*/虽然知道用法,但和上面一比较,发现如果,此处 this 代表anonymous 就会有问题
我曾就()问题专门法国一个贴子 http://expert.csdn.net/Expert/topic/1556/1556452.xml?temp=.9426538
现在()问题差不多明白。
*/
3、构造函数方法
function addItem(item)
{
this.item[this,items.length]=item; *//请看此处的this代表的是调用它的上一级mMenu ,why? */
return this.items.length-1
}
mMenu.prototype.addItem=addItem;
我用this已经很久了,但发现这个东西越来越不清楚,不同的时候代表的意义不一样。不知道为什么。
用function 和 Function 构造函数有什么不同?
aa=function{
alert("ttttttttttt")
}
和
aa=new Function(alert("ttttttttttt"))
又什么差别?