bind可以解决两种问题:

1. 可以改变一个函数的 this 指向

2. 可以实现偏函数等高阶功能

本文暂且讨论第一个功能

USE CASE

var foo = {
x: 3
} var bar = function(){
console.log(this.x);
} bar(); // undefined var boundFunc = bar.bind(foo); boundFunc(); //

简易版实现方式

Function.prototype.bind = function (scope) {
var fn = this;
return function () {
return fn.apply(scope);
};
}

参考链接:https://www.smashingmagazine.com/2014/01/understanding-javascript-function-prototype-bind/

最新文章

  1. 高性能MySQL(四):schema陷阱
  2. PhoneGap配置笔记
  3. python3练习-杨辉三角/帕斯卡三角形
  4. Hello, AnnsShadow!
  5. MySQL 的 RowNum 实现
  6. contiki makefile框架分析 < contiki学习之一 >
  7. Android EditText圆角的方法
  8. itext之pdf导出添加水印Java工具类
  9. redis的穿透和雪崩
  10. MySQL Transaction--查看未提交事务执行的SQL
  11. Dual Attention Network for Scene Segmentation
  12. 洛谷CF264D Colorful Stones(子序列匹配,思维)
  13. pygm2安装问题
  14. linux执行python命令后permission denied
  15. jquery双击事件会触发单击事件
  16. Google浏览器清除缓存快捷键
  17. openstack部署心得
  18. Spark分析之SparkContext启动过程分析
  19. Hadoop(16)-MapReduce框架原理-自定义FileInputFormat
  20. Kettle安装与配置

热门文章

  1. flink ha zk集群迁移实践
  2. ubuntu下搭建openGL环境
  3. FZU2127_养鸡场
  4. bzoj3477[Usaco2014 Mar]Sabotage
  5. Java虚拟机的内存管理----垃圾收集器
  6. 在ls /bin搜索的结果中找到以m开头的
  7. 【EF】EntityFramework DBFirst的使用
  8. windows主机防护
  9. KMP算法复习【+继续学习】
  10. 洛谷 P3241 [HNOI2015]开店 解题报告