关于JS的this和容易混淆的Call(), Apply(), Bind()

转载 2013年12月05日 14:48:22

http://dailyjs.com/2012/06/18/js101-this/


在new出来的函数中,this指代对象实例,这点和大部分OO语言一致;

其它情况下,this指代全局对象(浏览器中是window,node.js里是global);但严格模式下为undefined


http://dailyjs.com/2012/06/25/this-binding/


Call()和Apply()是一组的,用于替换函数的上下文this对象。区别是call已知各个参数并直接传入,而apply传入一个数组(更加动态)。

Bind()则返回一个以传入对象作为this的函数对象镜像,语法更为优雅。

相关文章推荐

JS中的this指向问题以及apply、call、bind的使用

call和apply的区别和使用 这两个使用的效果都一样,都是改变对象内部this指针的定向 其中 this 是你想指定的上下文,他可以是任何一个 JavaScript 对象(JavaScript 中...

使用call、apply和bind解决js中烦人的this,事件绑定时的this和传参问题

Teddy's  http://www.cnblogs.com/tingyu-blog/p/6212392.html 1、什么是this 在JavaScript中this可...

call、apply、bind和this

前言之前较为系统的学习了JavaScript的this用法,但是没多久又忘记了。从网上看到些不错的经验,所以借鉴了下,感觉挺不错的。简介说到this,我们会想到function,各种面试之类的考察fu...

javascript中this,apply,call,bind的学习笔记

一 、关于this     Javascript中的this经常让人糊涂,但总的一个原则就是,this总是指向一个对象,而具体指向哪个对象是在javascript执行阶段由执行环境动态绑定的,而非在...

Javascript中的this,call,apply,bind!

今天无意间在这里看到一篇说js中this的文章,看后满是疑问。。。  作者试用this.xXP作windowsroperty取某些属性得到了undefined等一系列非意料中的结果  于是认为导致这种...

js中call、apply、bind的用法

今天看博客时,看到了这样的一段js代码: var bind = Function.prototype.call.bind(Function.prototype.bind); 我想突然看到这...

戏说js的call, apply 和 bind (文章内容可能引起逻辑严谨的程序员的不适,慎入!)

有两个对象,他们的名字叫obj1, 和obj2, 他们很像,但是其实是生活在不同的平行空间中行走,但是彼此不能相见。下面请看看他们长什么样子。var obj1 = { power: 8, ...

apply, call, bind在js中的区别

apply, call, bind在js中的区别在js中,这三种方法都是用来改变函数的this对象的指向的。先看看相似点: 都是用来改变函数的this对象的指向的 第一个参数都是this要指向的对...

js中bind、call、apply函数的用法

最近一直在用 js 写游戏服务器,我也接触 js 时间不长,大学的时候用 js 做过一个 H3C 的 web的项目,然后在腾讯实习的时候用 js 写过一些奇怪的程序,自己也用 js 写过...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)