why?call,apply,bind干什么的?为什么要学这个? 一般用来指定this的环境,在没有学之前,通常会有这些问题。 我们是想打印对象a里面的user却打印出来undefined是怎么回事呢?如果我们直接执行a.fn()是可以的。 这里能够打印是因为,这里的this指向的是函数a,那为什么 ...
分类:
移动开发 时间:
2018-05-05 16:51:06
阅读次数:
213
为什么需要这些?主要是因为this,来看看this干的好事。 box.onclick = function(){ function fn(){ alert(this); } fn();}; 我们原本以为这里面的this指向的是box,然而却是Window。一般我们这样解决: box.onclick ...
分类:
移动开发 时间:
2018-05-05 11:11:02
阅读次数:
182
1.全局上下文中 this 2.函数上下文的 this 3.对象属性中的 this 4.构造函数 和 原型方法中的 this 5.应用 call、apply、bind 方法后的 this ...
分类:
其他好文 时间:
2018-04-23 00:07:56
阅读次数:
656
一、callcall(thisObj,arg1,arg2,arg...)定义:调用一个对象的方法,以另一个对象替换当前对象。说明:call方法可以用来代替另一个对象调用一个方法。call方法可以将一个函数对象的上下文改变为由thisObj指定的新对象。thisObj的取值有以下几种情况:(1)不传,或者为null,undefined时,函数中的this指向window对象;(2)传递另一个函数的函
分类:
移动开发 时间:
2018-04-19 16:59:50
阅读次数:
235
var Person = { name : 'alice', say : function(txt1,txt2) { console.info(txt1+txt2); console.info(this.name); }}var Dog = { name : 'tom', say : functio ...
分类:
移动开发 时间:
2018-04-11 21:39:15
阅读次数:
196
其实是一个很简单的东西,认真看十分钟就从一脸懵B 到完全 理解! 先看明白下面: 例1 obj.objAge; //17 obj.myFun() //小张年龄undefined 例2 shows() //盲僧 比较一下这两者this 的差别,第一个this 指向obj,第二个全局声明的shows() ...
分类:
移动开发 时间:
2018-04-10 10:52:23
阅读次数:
181
判定this 1. new绑定:新建对象; var bar = new foo(); 2. 明确绑定(call、apply,bind):指定对象; var bar = foo.call(obj) 3. 隐含绑定:环境对象(或容器对象); var bar = obj2.foo(); 4. 默认绑定:s ...
分类:
Web程序 时间:
2018-03-20 18:10:58
阅读次数:
146
原文地址:http://www.cnblogs.com/pssp/p/5215621.html why?call,apply,bind干什么的?为什么要学这个? 一般用来指定this的环境,在没有学之前,通常会有这些问题。 我们是想打印对象a里面的user却打印出来undefined是怎么回事呢?如 ...
分类:
移动开发 时间:
2018-03-06 17:07:00
阅读次数:
183
1.apply和call的区别在哪里 2.什么情况下用apply,什么情况下用call 3.apply的其他巧妙用法(一般在什么情况下可以使用apply) 我首先从网上查到关于apply和call的定义,然后用示例来解释这两个方法的意思和如何去用. apply:方法能劫持另外一个对象的方法,继承另外 ...
分类:
移动开发 时间:
2018-02-27 19:28:09
阅读次数:
196
延续系列一: "链接" ,此次主要整理JS里面很常见的三个函数call,apply,bind的妙用。(apply和call差不多,只是参数的区别)(下面有些这三个可能只是辅助,但是只要用到,我就在这里整理) 1.类型检测 上一篇最后一个已经讲到,Object.prototype.toString.c ...
分类:
移动开发 时间:
2018-02-17 17:15:42
阅读次数:
214