javascript - 这里为什么把this赋给变量?
本文介绍了javascript - 这里为什么把this赋给变量?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
draw_anim:function(context){
var me=this;
var width = me.canvas.width,height = me.canvas.height;
var img = new Image();
img.src = this.imgsrcList[me.current];
img.onload = function () {
context.clearRect(0,0,width,height);
context.drawImage(img, 0, 0,img.width, img.height);
}
有什么好处吗?直接用不可以吗?
解决方案
一般来说这种情况可能是因为在后面某些不属于当前环境的函数(如点击事件)里面调用this,至于把this保存成临时变量有没有性能优化的效果我不太清楚
如:
img.onload = function () {
context.clearRect(0,0,width,height);
context.drawImage(img, 0, 0,img.width, img.height);
//你这里想调用上面的this的话就需要用到me,因为这里的this指向的是img
}
这篇关于javascript - 这里为什么把this赋给变量?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文