如何在严格模式下使用'this'

时间:2018-06-01 09:54:49

标签: javascript angularjs

我有一个角度服务,我们称之为ActionService,它使用 '使用严格'。因此,每当我使用 this 来调用自己的方法时,它都是未定义的。有没有办法绕过严格的使用?

if (angular.isFunction(this[action.name])) {
   this[action.name](parameters);
} else {
   doSpecialAction(action, parameters);
}

1 个答案:

答案 0 :(得分:1)

您的问题与use strict;无关。

Javascript不会传递this上下文,IOW:this没有绑定到函数调用,除非您使用点表示法访问函数,将函数调用为默认值将具有{{1如果不是this,那么这两种情况下都不是非常有用的。

因为这个Javascript有use strict等等。

在你的情况下bind / apply / call很可能是你的追随者。

如此。

call