论坛首页 Web前端技术论坛

javascript面向对象技术基础(五)

浏览 13285 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-12-30  
liliefeng 写道

楼主的代码有很多错误,很明显的一个就是this的使用,其实this在js中是关联执行时的作用域,而非定义时的作用域,呵呵,好好看看,别误导新手

this的作用域是在js关联执行时确定的,但是在文章中我并没有提到这方面的内容。而且,如果代码有错误的话,那还请你详细的指出来,我肯定非常感谢
0 请登录后投票
   发表时间:2008-12-30  
f.call(o, 1, 2);
作用就相当于
o.m = f;
o.m(1,2);
delete o.m; //这个是什么时候执行的?

我怎么通过代码看是这样的情况呢?

o=f(1,2);

0 请登录后投票
   发表时间:2008-12-30  
hanjs 写道
f.call(o, 1, 2);
作用就相当于
o.m = f;
o.m(1,2);
delete o.m; //这个是什么时候执行的?

我怎么通过代码看是这样的情况呢?

o=f(1,2);


f.call(o, 1, 2);
作用就相当于
o.m = f;
o.m(1,2);
delete o.m;
后面的情况是为了描述的更清楚而假设的

你自己假设的情况是不正确的,最好自己试一下。

0 请登录后投票
   发表时间:2009-02-12  
请教一下,在最后一段代码中
1. PositionCircle.prototype = new Circle();
new Circle()是创建一个新的Circle实例还是设置PositionCircle.prototype属性指向Circle函数

2. alert(PositionCircle.constructor);
   alert(PositionCircle.prototype.constructor)
为什么得到不一样的结果呢?PositionCircle.constructor与PositionCircle.prototype.constructor有什么区别?

3. PositionCircle.prototype.constructor = PositionCircle;
   alert(PositionCircle.constructor);
   alert(PositionCircle.prototype.constructor)
   与  
  
   PositionCircle.prototype = new PositionCircle();// 参考PositionCircle.prototype = new Circle();
   alert(PositionCircle.constructor);
   alert(PositionCircle.prototype.constructor)
输出不一样?请教一下
0 请登录后投票
   发表时间:2009-02-20  
terrysunhh 写道


3. PositionCircle.prototype.constructor = PositionCircle;
   alert(PositionCircle.constructor);
   alert(PositionCircle.prototype.constructor)
   与  
  
   PositionCircle.prototype = new PositionCircle();// 参考PositionCircle.prototype = new Circle();
   alert(PositionCircle.constructor);
   alert(PositionCircle.prototype.constructor)

请问这有什么qubie
0 请登录后投票
   发表时间:2009-04-27  
还不错,值得一看啊
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics