函数赋值时this执行环境的改变原因 javascriptfunctionthis执行环境 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我没明白alert((object.getName = object.getName)());跟object.getName = object.getName;alert(object.getName());区别在哪儿?产生这种区别的原因是什么?尽管我知道结果确实不一样... 何必写的这么复杂。这样不行吗?a = object.getName;alert(a()); 这个不能太详细,详细就如老道在js语言精粹里边说的,这是一个js 设计bug,跟作用域什么的可能关系不大。然后如何避免这个bug高程上讲了,如果现在你还是看不懂,那可能缺少对js语言全局宏观概念的掌握,建议看看js语言精粹,虽然那书不太适合新手看,但你就只看this这块。然后实战其它代码吧,回头等建立或习惯于js的各种其芭,或建立那种全局观之后,再来看这个问题,或许豁然开朗。 你这样调用,把函数赋值给了全局的变量a,所以a()是在全局环境里执行的,我大概能明白。但是这一句:(object.getName = object.getName)()为什么this指向的是window而不是object呢? 你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些... 你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。 呃...我怎么感觉语气不太对,,,不管怎样,弄明白了请告诉我,万分感谢!JavaScript 高级程序设计 第三版,P182~183... 你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。我已经拿到js语言精粹了,翻了一篇没找到关于this的内容在哪,可以告知我一下具体位置吗?要不我就得从头开始看这本书了..谢谢! 你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。我已经拿到js语言精粹了,翻了一篇没找到关于this的内容在哪,可以告知我一下具体位置吗?要不我就得从头开始看这本书了..谢谢!28页左下角。 增加一些杂质会不会好点。(1,2,object.getName)();(1,2,object.getName = object.getName)();神奇的js,反正我应该好像懂了。 js语言精粹函数那一章我应该都看懂了,也明白方法调用模式和函数调用模式的区别,也明白老道所说的bug是什么含义。只是不明白为什么 (object.getName = object.getName)() 这样调用属于 函数调用模式?这难道不应该是把 object.getName所指向(引用)的内存里的一段函数代码 赋值给 object.getName 吗?我感觉调用赋值后的 object.getName 应该属于方法调用模式呀? 不明白,,求解释.... Ext combobox 自动会选择值问题 js禁用IE问题 [ExtJS]紧急求助:PropertyGrid的数据怎么穿到后台保存... [菜菜]日期控件在FF浏览器中不能显示 请大家帮我修改代码,关于分级菜单 求助:如何用javascript实现类似网易,新浪等网站免费邮箱中增加附件的功能?(急!!!) 求帮忙,有个JQUERY的问题 不理解 准备学JS了 一个函数重名问题,同一页文件中和独立js文件中的区别 关于网页滚动条的问题??(在线等待) 这样判断为什么没有效果? js代码
我没明白
alert((object.getName = object.getName)());
跟
object.getName = object.getName;
alert(object.getName());
区别在哪儿?产生这种区别的原因是什么?尽管我知道结果确实不一样...
a = object.getName;
alert(a());
但是这一句:(object.getName = object.getName)()为什么this指向的是window而不是object呢?
你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...
你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...
目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。
呃...我怎么感觉语气不太对,,,不管怎样,弄明白了请告诉我,万分感谢!
JavaScript 高级程序设计 第三版,P182~183...
你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...
目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。
你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...
目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。
我已经拿到js语言精粹了,翻了一篇没找到关于this的内容在哪,可以告知我一下具体位置吗?要不我就得从头开始看这本书了..谢谢!
你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...
目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。
你的意思是,这种用法不按常理出牌?在语法上找不到合理的解释方法?如果是这样的话,我将其理解为一个bug是不是会容易接受一些...
目前可以这么粗糙的理解,但是理解为bug的话,里边也有沉淀多年的js历史问题,后面了解其它js全局概念后,在回来了解。
我已经拿到js语言精粹了,翻了一篇没找到关于this的内容在哪,可以告知我一下具体位置吗?要不我就得从头开始看这本书了..谢谢!28页左下角。
(1,2,object.getName)();
(1,2,object.getName = object.getName)();神奇的js,反正我应该好像懂了。
只是不明白为什么 (object.getName = object.getName)() 这样调用属于 函数调用模式?
这难道不应该是把 object.getName所指向(引用)的内存里的一段函数代码 赋值给 object.getName 吗?我感觉调用赋值后的 object.getName 应该属于方法调用模式呀? 不明白,,求解释....