为什么要使用javascript函数包装器添加在coffeescript中“callthis”

问题描述

它正在创建一个函数,然后使用父函数/对象范围进行调用

.call和.apply是调用函数的不同方法。您基本上创建了一个函数,除了在自己的范围内设置a = 1之外,什么也不做。

在javascript中,您需要意识到每个函数都是一个对象,并且this是指当前对象/函数内容。从函数内部使用.call(this)替代this,并将其替换为调用上下文中的替代。

解决方法

当我使用最新(1.0)版本的coffee-script时,一个简单的javascript输出看起来像这样(默认):

(function() {
  var a;
  a = 1;
}).call(this);

什么 .CALL(本) 做,哪些是添加它的原因是什么?

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...