这里为什么把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);

                }

https://img4.mukewang.com/5c170b9f000113aa03020173.jpg

有什么好处吗?直接用不可以吗?

叮当猫咪
浏览 535回答 1
1回答

人到中年有点甜

一般来说这种情况可能是因为在后面某些不属于当前环境的函数(如点击事件)里面调用this,至于把this保存成临时变量有没有性能优化的效果我不太清楚如:img.onload = function () {    context.clearRect(0,0,width,height);    context.drawImage(img, 0, 0,img.width, img.height);    //你这里想调用上面的this的话就需要用到me,因为这里的this指向的是img}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript