1.toString()与String()
 使用方式:x.toString();-----String(x);
 String是万能的方法,而x.toString()则有局限性,无法将undefined和null转化为字符串的形式.因为这两者不能使用".方法"的形式使用.
而我们此时就可以通过x.toString()的方式来模拟String()的方法.
实现思路:作条件限制,如果是null-->"null"如果是undefined-->"undefined"
否则,都返回x.toString().
2.为Array重写indexOf方法
由于indexOf是String的方法,而数组时无法直接调用该方法的,不过该方法又有很好的实用性,所以我们需要让数组也支持该方法.
首先,indexOf方法需要两个参数,val和fromi,一个是用于检测的值,一个是开始的下标.然后,判断用户给的参数,fromi可以省略,默认为0.indexOf方法的核心就是历遍数组,做等值比较.
3.forEach()与map()
forEach是基于原数组,对数组执行相应的操作.
map是创建一个新数组,接受对原数组的做作后的结果并返回.
重新定义的原理:历遍数组,只有有元素,都执行cellback.
4.bind()
是什么:基于现有函数,创建一个新函数,提前永久绑定函数中的this为指定对象-->函数中的this默认指的是当前调用这个函数的对象.如果过没有对象调用函数,this指的是window.
匿名函数的自调:匿名函数内的this指的是window;回调函数(在函数里调用函数):默认的this也是指window;
例子:两次绑定了this.
$("#preview h1>a").each(function(elem){
elem.on("click",this.move.bind(this));
}.bind(this));
在本例中,this的绑定顺序是由外向内绑定的,这是由于程序是由外向内执行(左->右)的.外层将回调函数的this由window绑定成了对象本身(zoom)
(即能找到this.move).而里面的bind将外层并进回调函数的this(zoom)又绑给了move函数中的this(默认是指调用该函数的对象elem),所以move函数里的this也就变成了zoom.

最新文章

  1. jquery插件之tab标签页或滑动门
  2. Spring4.1.0 整合quartz1.8.2 时 : class not found : org.springframework.scheduling.quartz.JobDetailBean
  3. wordpress通过代码禁用IE8, IE9,IE10等IE浏览器兼容视图模式(Compatibility View)
  4. Linux系统文本命令快速登录与退出
  5. TensorFlow框架(4)之CNN卷积神经网络
  6. QEMU KVM Libvirt手册(11): Managing Storage
  7. php_network_getaddresses: getaddrinfo failed 原因
  8. rsyslog的安装、使用、详解
  9. 完整的一次 HTTP 请求响应过程(一)
  10. Badge
  11. shell下变量比较最佳实践
  12. 使用缓存方式优化递归函数与lru_cache
  13. macos 下安装virtualenv,virtualenvwrapper,然后在pycharm中正常配置方法日志
  14. 关于vue2.0获取后端数据
  15. python nltk 安装及配置说明
  16. TensorFlow实战——个性化推荐
  17. Ng第七课:正则化与过拟合问题 Regularization/The Problem of Overfitting
  18. 基于Redis的CAS集群
  19. WPF的xaml中特殊字符表示
  20. 关于SDN

热门文章

  1. 零基础在线制作Windows Phone 8 应用
  2. Docker之Compose服务编排
  3. Atitit 数据存储视图的最佳实际best practice attilax总结
  4. 扎克伯格开发的家用AI: Jarvis
  5. 4.2w起步的软件公司创业历程
  6. ASP.NET MVC5+EF6+EasyUI 后台管理系统(36)-文章发布系统③-kindeditor使用
  7. Android Tint
  8. 前端开发工具vue.js开发实践总结
  9. 《转载》PAT 习题
  10. 连接SQLServer时,因启用连接池导致孤立事务的原因分析和解决办法