浅谈类似于(function(){}).call()的js语句

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

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

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

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

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

var name = function(){...}

以上所述就是本文的全部内容了,希望大家能够喜欢。