中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

[沫沫金]JS匿名函數this調用變量報錯

發布時間:2020-07-02 18:31:32 來源:網絡 閱讀:331 作者:沫沫金 欄目:web開發

背景

今天使用Dcloud掃碼功能,success成功方法設置data中的scanContext變量,報“undefined”!

思路

一、懷疑是掃碼內容不是JSON對象,無法點屬性報錯。排除,使用JSON.parse轉換成功后,依然報“undefined”。
二、怎么就“undefined”呢,百思不得其解。繼續想辦法

解決

突然,看到附件選擇的方法,人家是設置的this.fileUrl成功的。比對下,什么區別。發現定義的匿名方法,寫法不同。我的是function(res),人家的是(res) =>箭頭。考下去試試,

成功了!!!

原因

這就是JS中匿名方法的this指向問題,function的聲明方式,this指向的是本身,父級的變量都無法訪問。請閱讀下面的源碼,運行會報錯嗎?

<script type="text/javascript">
var num = 100;
var thah={
success:function(){
alert(this.num);
}
}
thah.success();
</script>

擴展

請熟悉的朋友跟我一起讀:var that = this;//大法好
更時尚的是箭頭聲明 success:(res)=>{} 更時尚、更流行、高大上。

以上,是關于JS匿名函數this的指向問題。踩過的坑,一起歡呼。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

伊宁县| 东丽区| 汝城县| 丰镇市| 湖州市| 寿阳县| 昂仁县| 乳山市| 八宿县| 金坛市| 清远市| 积石山| 神池县| 康马县| 娱乐| 双鸭山市| 广安市| 横山县| 琼中| 岗巴县| 竹北市| 汉沽区| 辽宁省| 灵璧县| 新源县| 什邡市| 新余市| 凤翔县| 阳城县| 蕉岭县| 彭水| 平顺县| 文昌市| 曲周县| 广宗县| 方山县| 南溪县| 南皮县| 石泉县| 井陉县| 嘉峪关市|