var,let和const的差別在於:var的變數宣告在程式碼執行前且工作範圍在目前執行的上下文中,let是允許建立一個變數但只作用在它的區塊裡,const與let什麼相似唯一的差異是const定義的變數不可更改
本篇文章主要是透過在JavaScript (ES6) 中建立變數的方法來介紹var、 let和const之間的區別,具有一定的參考作用,希望對大家有幫助。
【推薦課程:JavaScript教學】
function discountPrices (prices, discount) { var a = [] for (var i = 0; i < prices.length; i++) { var discountedPrice = prices[i] * (1 - discount) var finalPrice = Math.round(discountedPrice * 100) / 100 a.push(finalPrice) } console.log(i) // 3 console.log(discountedPrice) // 150 console.log(finalPrice) // 150 return a }
function discountPrices (prices, discount) { let a = [] for (let i = 0; i < prices.length; i++) { let discountedPrice = prices[i] * (1 - discount) let finalPrice = Math.round(discountedPrice * 100) / 100 a.push(finalPrice) } console.log(i) // 3 console.log(discountedPrice) // 150 console.log(finalPrice) // 150 return a } discountPrices([100, 200, 300], .5) // 这儿会报错i未定义
function discountPrices (prices, discount) { console.log(discounted) // undefined var a = [] for (var i = 0; i < prices.length; i++) { var discountedPrice = prices[i] * (1 - discount) var finalPrice = Math.round(discountedPrice * 100) / 100 a.push(finalPrice) } console.log(i) // 3 console.log(discountedPrice) // 150 console.log(finalPrice) // 150 return a}
function discountPrices (prices, discount) { console.log(discounted) // 错误 let a = [] for (let i = 0; i < prices.length; i++) { let discountedPrice = prices[i] * (1 - discount) let finalPrice = Math.round(discountedPrice * 100) / 100 a.push(finalPrice) } console.log(i) // 3 console.log(discountedPrice) // 150 console.log(finalPrice) // 150 return a}
let name = 'Tyler' const handle = 'tylermcginnis' name = 'Tyler McGinnis' //正确 handle = '@tylermcginnis' //错误
const person = { name: 'Kim Kardashian' } person.name = 'Kim Kardashian West' // 正确 person = {} // 错误
以上是JavaScript中var,let與const之間有什麼區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!