1_let和const.html 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <script>
  10. // var a = 10;
  11. // var a = "a";
  12. // console.log(a)
  13. // 新增变量定义防范。let
  14. //1、 let 定义的变量 不能重复定义
  15. // let a = 10;
  16. // let a = 20;
  17. // console.log(a);
  18. //2、 不属于顶层对象window
  19. // window 时浏览器中的全局对象
  20. // var a = 10;
  21. // let b = 20;
  22. // console.log(window.a);
  23. // console.log(window.b);
  24. // 3、let 定义的变量 不存在变量提升
  25. // console.log(a);
  26. // let a = 10;
  27. // // 4、let 定义的变量 存在块级作用域
  28. // // 5、暂时性死区
  29. // function foo(){
  30. // console.log(a);
  31. // let a = 10;
  32. // }
  33. // const 定义常量
  34. // 常量就是定义之后不能被修改
  35. // 变量定义后可以随意修改
  36. // const c = 10;
  37. // c = 30;
  38. // console.log(c)
  39. // const 定义的常量 值不可以修改
  40. // const arr = [1,2,3,4];
  41. // arr[0] = "hello";
  42. // console.log(arr);
  43. const arr3 = [1,2,3,4];
  44. arr3 = [6,7,8];
  45. console.log(arr3)
  46. let arr = [1,2,3,4,5,6];
  47. // 如果引用数据类型直接赋值 赋值的是地址 而不是最终的值
  48. // 只要有一个变量去改变值 另一个也会一起变化
  49. let arr2 = arr;
  50. arr[0] = "hello"
  51. console.log(arr2);
  52. </script>
  53. </body>
  54. </html>