假若你能写出一个完全符合 ES5 spec 的 Function.prototype.bind 的话,你就可以说是精通了。 首先我必须做一个假设,那就是我们说的是 JavaScript 这门语言本身,而不考虑任何和浏览器相关的事情。那也就是说,只要能在 Node.js 中跑起来就行,没有任何的 DOM 或 BOM API,也没有 JavaScript 版本兼容性问题。(基于这个假设,很多答案列举的是「什么不是 JavaScript」。) 为什么选择 Function.prototype.bind?因为假若你能完…