[筆記] Javascript

ES6最新版規範。

var

  • 全域/function的block內用的變數,可變更變數的值
  • 但在其他非function的blcok內,例如if,會造成污染狀況,明明在block宣告的卻在global可以使用
  • var在宣告前可以用,不會出現error
  • var重複宣告相同的變數會直接覆蓋掉重複的舊變數,容易造成debug上的困難

let

  • 宣告後僅會在自己宣告的那個block內有效,不會污染其他變數或global變數
  • 宣告後可變更變數的值
  • 在宣告前使用會出現錯誤(合理)
  • 重複宣告相同的變數會出現SyntaxError

const

  • 宣告後僅會在自己宣告的那個block內有效,不會污染其他變數或global變數
  • 不可變的變數
  • 在宣告前使用會出現錯誤(合理)
  • 重複宣告相同的變數會出現SyntaxError