javascript函数的一个小问题

rainsbaby 2015-02-04 07:21:09

window.color = "red";
var o = {color: "blue"};

function sayColor(){
alert(this.color);
}
var objectSay = sayColor().bind(o);
objectSay();


看书上说,结果应该是"blue", 但我得到的都是red。在chrome、firefox上都试过,请问是什么愿意呢?
...全文
91 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainsbaby 2015-02-05
  • 打赏
  • 举报
回复
引用 2 楼 ohmygirl 的回复:
你一定是抄错了: var objectSay = sayColor.bind(o); 注意红色部分,应该是函数名,而不是直接调用函数。否则便不是函数绑定了。
汗!!多谢!
ohmygirl 2015-02-04
  • 打赏
  • 举报
回复
你一定是抄错了: var objectSay = sayColor.bind(o); 注意红色部分,应该是函数名,而不是直接调用函数。否则便不是函数绑定了。
天际的海浪 2015-02-04
  • 打赏
  • 举报
回复
window.color = "red";
var o = {color: "blue"};
function sayColor(){
	alert(this.color);
}
sayColor.call(o);

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧