已采纳回答 / wusyd1063
情况1:如果一个函数中有this,但是它没有被上一级的对象所调用,那么this指向的就是window,这里需要说明的是在js的严格版中this指向的不是window,但是我们这里不探讨严格版的问题,你想了解可以自行上网查找。 情况2:如果一个函数中有this,这个函数有被上一级的对象所调用,那么this指向的就是上一级的对象。 情况3:如果一个函数中有this,这个函数中包含多个对象,尽管这个函数是被最外层的对象所调用,this指向的也只是它上一级的对象this永远指向的是最后调用它的对象,也就是看它...
2016-08-17
最赞回答 / 慕慕7300641
each: function(obj, callback, args) { var value, i = 0, length = obj.length, isArray = isArraylike(obj); // 判断是不是数组 // 传了第三个参数 if (args) { if (isArray) { for (; i < length; i++) { // 相当于: // args = [a...
2016-08-12
最赞回答 / Zickson
为了链式调用方便。比如一个对象:A的某个方法函数执行结果返回对象A自身时(this),可以再次调用A对象的其他方法;其他方法如果返回值依然为自身,还可以继续调用A的方法...例:shape.set(x).set(y).set(z).set(type)
2016-08-11
已采纳回答 / JSAL
以下是我的理解,不知道对不对貌似是深浅拷贝的问题copy = options[name]其实新建了一个与 options[name]相同内容的对象,这样使用target[name]时候就不会影响到options[name]的值,是深拷贝;target[name]=options[name]的话则是浅拷贝,target[name]其实是options[name]的引用,target[name]改变,options[name]也会随着改变。
2016-08-01
最新回答 / 慕雪5194257
根据stateString状态,如果状态为resolved,则rejected对应的$.callBacks队列就不能执行了,并且notify对应的$.callBacks会被锁住。同理:如果状态为rejected,则resovled对应的$.callBacks队列不能执行,并且notify对应的$.callBacks会被锁住。
2016-07-23
最新回答 / 张昕_88
不是,你没看到self是一个callback()函数 下面有个返回值吗?return self 这个就是返回callback自身,你就可以直接用callback("").self{里面的方法了},这个是javascript的基本语法啊注意
2016-07-22
最新回答 / 慕雪5194257
slice是数组的一个函数,this指向原数组。上面的写法等价于:this.slice(),this就是一个array。意思是当num == null的时候,返回整个数组的拷贝。
2016-07-21