形如(function(){}).call()的js语句

研究新浪微博的自动登陆流程,其中涉及到它的加密算法脚本,其中有一段如下形式的代码:

(function(){...}).call(name)

其中红色的....是函数的内部各种实现,name为一个对象的名字.这种形式的js从来没见过啊(恕我js这方面见识少啊).然后百度了一下大概的意义如下:

.call(name)的作用实际是将name作为前面函数所在域中的this来用,也就是说此时函数中的this就相当于引用的是name.

这段代码的实际意义可以认为:函数的具体实现对变量name的进行的改造,或者更简单的说函数的实现就是变量name的具体实现,某种意义上它等价于:

var name = function(){...}

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。