0
A
回答
2
它对性能没有帮助。它有助于混淆。 this
自动重新分配很多。如果你想记住什么是this
,你可以将它分配给其他东西,传统上me
,self
或that
。或者您使用bind
。它也有助于压缩,因为me
可以压缩为单字母变量,但只有this
是神奇的,不能重命名。
3
它不会在服务表现帮助,但是当被调用的函数在不同的范围内,你仍然有指针的预期目标
function someFunc() {
var me = this;
someElement.on("click", function() {
console.log(me);
console.log(this);
});
};
时,这是记录在控制台将显示函数的调用者。在我登录的情况下,它会显示被点击的元素。
0
这不是性能相关的。但是通过这种方式,它声明了一个var,可以在这个“Closure”中被其他成员访问。注意到其他成员的“这个”不是由定义上下文决定的,“this”是谁调用函数的人。相反,变体范围总是由定义上下文决定的。
+0
更像是评论而不是回答。 – 2014-09-11 09:34:05
相关问题
- 1. 从Parse.Query分配一个对象到一个全局变量
- 2. 为什么这个变量在C#中通过Mono被列为未分配的局部变量
- 3. 为什么python认为这是一个局部变量?
- 4. 为什么这个变量作为一个对象?
- 5. 为什么这个全局变量没有被改变?
- 6. 为什么这个指针没有被分配给一个新的对象?
- 7. 这个对象为什么被释放?
- 8. 为什么这个局部变量被标记为undefined? - 红宝石
- 9. 角JS - 一个对象作为变量
- 10. 分配一个对象引用变量
- 11. 为什么将一个IIFE分配给一个变量?
- 12. 这个实例对象为什么被改变?
- 13. 为什么一个原始变量就像一个对象?
- 14. 在java中,一个对象被认为是一个变量?
- 15. 为什么方法参数重新分配给局部变量?
- 16. 将对象字段分配给局部变量有什么优势?
- 17. 为什么我不能在try块中分配对象变量?
- 18. 为什么lambda对象中的局部变量是const?
- 19. 为什么我在这里得到一个SIGABRT(动态分配)?
- 20. 为什么这个变量是在
- 21. Perl - 分配散列 - 为什么分配的变量被更改?
- 22. 如何将一个对象函数分配给一个变量?
- 23. 如何检查对象是否被分配到一个整数变量
- 24. 为什么我必须分配一个对象并在Obj-C中设置我的实例变量=该对象?
- 25. 为什么JS在分配为变量时识别DOM节点?
- 26. 在什么时候内存被分配给C++中的一个常量变量?
- 27. 这两个局部变量有什么区别?
- 28. 分配对象“这个”
- 29. 为什么这个变量被改变了?
- 30. 分配对象属性值到一个数组或变量
+1因为它有助于混淆。 'var me = this'是我的宠物,而不是有人将自己的头撞向计算机2个小时,因为在'me!== this'的特殊情况下,他们可能会重构一些重复的代码并减少这种方式缩小了尺寸。 – pllee 2014-09-11 17:12:35