在JavaScript中使用var定义变量,但是在typescript中定义变量推荐使用let ,let声明的变量只在其所在的代码块内有效
1.要想正常使用let的前提:在.ts文件最上面添加(严格模式)  "use strict";3.typescript-定义变量

 

2.let声明的变量只在其块级作用域内生效
3.typescript-定义变量
会报以下错误  说找不到a这个变量
3.typescript-定义变量
 
3. for循环应用场景
var定义变量时,for循环在正常的情况下是可以正常输出的
3.typescript-定义变量3.typescript-定义变量

 

但当for循环内出现闭包函数的时候就全部输出最后一个值(原理见 js->闭包循环问题)
3.typescript-定义变量3.typescript-定义变量

 

这个时候我们往往会利用立即执行函数来改变这种输出状态
3.typescript-定义变量3.typescript-定义变量

 

但是使用let定义变量就可以直接解决这个问题
3.typescript-定义变量3.typescript-定义变量

 

注意:
  1. let定义的变量不会变量提升
  2. let不允许重复声明(即使上一次是使用var声明的)
  3. let不会泄露循环变量为全局变量
    3.typescript-定义变量
    等等..
 
相关文档
 
 

相关文章:

  • 2022-12-23
  • 2021-08-05
  • 2021-08-01
  • 2021-11-25
  • 2021-07-30
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-02-24
  • 2022-12-23
  • 2021-12-08
  • 2021-12-29
相关资源
相似解决方案