首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

这段代码的执行结果很诡异,还望高手不吝赐教!该怎么处理

2012-03-23 
这段代码的执行结果很诡异,还望高手不吝赐教!JScript codefunction base() {this.member globalthis.

这段代码的执行结果很诡异,还望高手不吝赐教!

JScript code
function base() {    this.member = "global";    this.method = function() {        console.log("global method");        return "global method return";    };}(function extend() {    base.call(this);    console.log(this.member);    console.log(this.method());})();


其打印结果为什么会是:
JScript code
globalglobal methodglobal method return

呢,还望高手不吝赐教,正确的打印结果不应该是
JScript code
global methodglobalglobal method return


吗?

[解决办法]
HTML code
<script type="text/javascript">              function base() {                this.member = "global";                this.method = function() {                    console.log("global method");                    return "global method return";                };            }            (function extend() {                base.call(this);                console.log(this.member);   //这句输出global ,因为base函数的this.member 就是 "global";                console.log(this.method());  //这句输出 global method  global method return   //lz你可以把这句注释掉就清楚了,            })();        </script> 

热点排行