文章詳情頁
javascript - js let 和 var問題
瀏覽:120日期:2023-06-06 18:04:43
問題描述
為什么用全局變量(var i = 0)無法傳入參數,區域變量(let i = 0)卻可以
for (var i = 0; i < inputs.length; i++) { inputs[i].onfocus = function(){showTip(i); };};function showTip(n){ tips[n].style.color = 'red';}
問題解答
回答1:日經問題,請自行搜索:閉包、JavaScript的塊級作用域
回答2:let 只是在當前塊級作用域(for的大括號內)有效,每次循環可看成一個新的變量。可參考阮一峰的 ECMAScript 6 入門 中的let命令
標簽:
JavaScript
相關文章:
1. html5 - 有可以一次性把所有 css外部樣式轉為html標簽內style=" "的方法嗎?2. javascript - 求解答:實例對象調用constructor,此時constructor內的this的指向?3. javascript - 如何將一個div始終固定在某個位置;無論屏幕和分辨率怎么變化;div位置始終不變4. javascript - 這不是對象字面量函數嗎?為什么要new初始化?5. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風格檢查怎么辦。。。6. html - vue項目中用到了elementUI問題7. javascript - 有什么比較好的網頁版shell前端組件?8. javascript - iframe 為什么加載網頁的時候滾動條這樣顯示?9. javascript - [js]為什么畫布里不出現圖片呢?在線等10. javascript - 原生canvas中如何獲取到觸摸事件的canvas內坐標?
排行榜
