一道JS小考题

Posted on 2008-01-10 10:50 久城 阅读(890) 评论(1)  编辑  收藏 所属分类: 问题
<script>
function foo(){
  foo.abc 
= function(){alert('def')}
  
this.abc = function(){alert('xyz')}
  abc 
= function(){alert('@@@@@')};
  
var abc = function(){alert('$$$$$$')}
}
foo.prototype.abc 
= function(){alert('456');}
foo.abc 
= function(){alert('123');}
var f = new foo();
f.abc();
foo.abc();
abc();
</script>

...
..
.

输出结果是:
<script>
function foo(){
  foo.abc 
= function(){alert('def')}
  
this.abc = function(){alert('xyz')}
  abc 
= function(){alert('@@@@@')};
  
var abc = function(){alert('$$$$$$')}
}
foo.prototype.abc 
= function(){alert('456');}
foo.abc 
= function(){alert('123');}  
var f = new foo();
f.abc();  
// alert('xyz')
foo.abc(); // alert('def')
abc(); // error -> abc is not defined
</script>


没看懂,问题保留。


欢迎来访!^.^!
本BLOG仅用于个人学习交流!
目的在于记录个人成长.
所有文字均属于个人理解.
如有错误,望多多指教!不胜感激!

Feedback

# re: 一道JS小考题  回复  更多评论   

2008-06-17 13:55 by ayiaman
var f = new foo();
f.abc(); // alert('xyz') 调用实例的方法
foo.abc(); // alert('def')调用类方法,相当于静态调用
abc(); // error -> abc is not defined没定义啊。。明显。

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问  
 

Copyright © 久城