其实类型变量没啥好说的,和JavaScript一样,var 这种带变量提升的直接弃用,用什么呢,使用
let
和const
const 定义常量使用,也就是说你一个参数不可变,使用const
而let 块级作用域这个也是常见的一道面试题
描述块级作用域这个也常见了 for 循环
for (let i = 0; i < 10; i++) {
setTimeout(function(){console.log(i);}, 100 * i);
}
预期结果
123456789
如果是var
for (var i = 0; i < 10; i++) {
setTimeout(function(){console.log(i);}, 100 * i);
}
10
10
10
...
所以基本不用var
关于变量这块在增加一个知识,解构,也是偶尔可以使用到,
let first = [1, 2];
let second = [3, 4];
let bothPlus = [0, ...first, ...second, 5]
类似这种
展开了浅拷贝,当然这也是一道面试题,关于JS对象堆栈引用了,简单来说记住浅拷贝没有改变堆栈引用,要彻底改变堆栈引用要用深拷贝
以上就是声明方式要注意的点,其实TS特性的部分并不多
文章采用 知识共享署名 4.0 国际许可协议 进行许可,转载时请注明原文链接。