定义变量
- 传统定义变量和常量都用var
- Es6
- 定义变量用let
- 定义常量用const
var name = "dasda";
var PI = Math.E;
-----------------------
let pwd = 123;
const PI = Math.E;
let,var,const区别
-
let和const解决var变量穿透问题和常量修改问题
-
穿透问题
-
<script> for(var i = 0; i <= 5; i++){ console.log(i); } console.log(i); </script> test.html:12 1 test.html:12 2 test.html:12 3 test.html:12 4 test.html:12 5 test.html:14 6 //6被输出,出现穿透问题 <script> for(let i = 0; i <= 5; i++){ console.log(i); } console.log(i); </script> test.html:12 1 test.html:12 2 test.html:12 3 test.html:12 4 test.html:12 5 test.html:14 Uncaught ReferenceError: i is not defined at test.html:14 //使用let以后报错不会出现穿透问题
-
-
常量修改问题
-
//使用var定义常量是可以修改的 <script> var A = "aaa"; A = "bbb" console.log(A) </script> //使用const定义常量修改报错 <script> const A = "aaa"; A = "bbb" console.log(A) </script> test.html:12 Uncaught TypeError: Assignment to constant variable. at test.html:12
-
-