function Test(a,b)
{
this.A = a;
document.write(A);
this.B = b;
document.write(B)
} Test.jiechu= function(c,d)
{
this.A = c;
document.write(A);
this.B = d;
document.write(B)
}
Test(2,4);//2,4
Test.jiechu(14,18)//2,4
为什么 Test.jieche(14,18)的值不是 14,18 ?
{
this.A = a;
document.write(A);
this.B = b;
document.write(B)
} Test.jiechu= function(c,d)
{
this.A = c;
document.write(A);
this.B = d;
document.write(B)
}
Test(2,4);//2,4
Test.jiechu(14,18)//2,4
为什么 Test.jieche(14,18)的值不是 14,18 ?
解决方案 »
- JS可不可以实现:改变地址栏地址而不跳转
- 如何获取动态生成的表格中特定列的值
- extjs4 grid's cell不可复制问题?
- My97datepicker 引发document.body为空或不是对象
- IE Firefox history 问题
- 最近要利用javascript实现对地图的操作,毫无头绪,高手能否指点下,先谢谢了。
- JAVASCRIPT和SSL
- 求真正的页面loading进度条效果----高分,只要是真的一定给分。
- div滚动条不支持鼠标中键?
- javascript:openwin,我调用这个方法,传递窗口大小的参数,但是窗口弹出显示大小依然不变的啊!!
- alert后如何让光标回到原来的input里
- 文字无缝滚动代码 求更好的滚动代码
document.write(str+"<br/>");
}
function Test(a,b)
{
write(this==window);//这里的this表示全局对象window
this.A = a; //这样就表示A是一样全局对象了
write(A);
this.B = b;
write(B)
}
Test.jiechu= function(c,d)
{
this.A = c;
write(this.A); //这样才行
this.B = d;
write(B) //不加this直接在全局对象中查找B
}
Test(2,4);
Test.jiechu(14,18)//
{
write(this==window);//这里的this表示全局对象window
this.A = a+a; //这样就表示A是一样全局对象了
write(A);
this.B = 2*b; //数学中的 2b 的写法 ,不行
write(B)
}
Test2.jieru=Test.jiechu; //借用Test 的方法
Test(2,4);
Test.jiechu(14,18);
Test2(1,2);
Test2.jieru(90,90)
一个 对象可以借用另一个对象的方法。
document.write(str+"<br/>");
}
function Test(a,b)
{
write(this==window);//这里的this表示全局对象window
this.A = a; //这样就表示A是一样全局对象了
write(A);
this.B = b;
write(B)
}
Test.jiechu= function(c,d)
{
this.A = c;
write(this.A); //这样才行
this.B = d;
write(B) //不加this直接在全局对象中查找B
}
执行结果:true
2
4
14
4
可是,如果是这样:
write=function(str) {
document.write(str+"<br/>");
}
function Test(a,b)
{
write(this==window);//这里的this表示全局对象window
this.A = a; //这样就表示A是一样全局对象了
write(A);
this.B = b;
write(B)
}
Test.prototype.jiechu= function(c,d)
{
this.A = c;
write(this.A); //这样才行
this.B = d;
write(B) //不加this直接在全局对象中查找B
} Test(2,4);
Test.jiechu(14,18);
执行结果就是:
true
2
4
为什么 jiuchu 不能调用了?
Test(2,4);
Test.jiechu(14,18);
document.write(str+"<br/>");
}
function Test(a,b)
{
write(this==window);
this.A = a;
write(A);
this.B = b;
write(B)
}
Test.prototype.jiechu= function(c,d)
{
this.A = c;
write(this.A);
this.B = d;
write(this.B)
}
Test.prototype.jie=80Test(2,4); write(Test.jie);
Test.jiechu(0,0)
如果只是设置Test的属性,去掉 红色 字体部分,就能正常运行了。
Oh,my God!
function Test(a,b)
{
alert(this == window);
} Test.jiechu= function(c,d)
{
alert(this == Test);
}Test(1, 2);
Test.jiechu(3, 4);你会发现两者中 this 指向的不同
{
this.A = c;
write(this.A); //这样才行
this.B = d;
write(B) //不加this直接在全局对象中查找B
} //这个匿名函数是在全局环境 window 上定义的,是吗?它的作用域链 是window ,对吗?这样 B 的值,就好理解了。
请高手指教。
function dwn(s) { document.write(s + "<br/>"); } function myClass() { var p = 100; //private property; 私有属性 this.x = 10; //dynamic public property 动态公有属性 } myClass.prototype.y = 20; //static public property or prototype property 原型属性 myClass.z = 30; //static property //静态属性 var a = new myClass(); dwn(a.p); //undefined 私有属性对象无法访问到 dwn(a.x); //10 公有属性 dwn(a.y); //20 公有属性 a.x = 20; a.y = 40; dwn(a.x); //20 dwn(a.y); //40 //动态公有属性y覆盖了原型属性y delete(a.x); delete(a.y); dwn(a.x); //undefined 动态公有属性x被删除后不存在 dwn(a.y); //20 动态公有属性y被删除后还原为原型属性y dwn(a.z); //undefined 类属性无法通过对象访问 dwn(myClass.z); //30 类属性应该通过类访问