var write = document.write;
write("hello");
//能够正确执行吗?
//如果不正确,正确操作是怎样的?
不能正确执行,因为 write 函数丢掉了上下文。
正确的操作应该是:
1: var write = document.write.bind(document)
或者
2: write.call(document, "hello")
推荐你看这篇文章:Javascript中bind()方法的使用与实现