【TypeScript】学习之路(3)
一、TypeScript变量声明
1、变量名称可以包含数字和字母。
2、除了_和$,不能有其他符号,空格也不行。
3、不能以数字开头。
例:var 变量名:变量类型 = 值;
如果无值则输出为undefined。
如果无变量类型则此变量可以为任何类型。
如果无变量类型和值则此变量为undefined。
二、类型断言
1、简介:类型断言可以用来手动指定一个值的类型,即允许变量从一种类型更改为另一种类型。
2、语法格式:<类型>值 或者 值 as 类型
例:
var str = ‘1’;
var str2 = str;
console.log(typeof str2);
上面图片所示为Ts写法,而下面为Js输出。最终输出1,而且类型为string。
三、类型推断
1、简介:当类型没有给出时,TypeScript 编译器利用类型推断来推断类型。
可以看出当用TS写这段代码,会提示错误。我们可以理解为当我们声明num这个变量为2的时候,会被
当作number类型来编译,而当我们再次赋值"1",则会被判定number类型和string类型存在冲突,因为我
们的变量在刚开始就被指定为number类型了。
四、变量作用域
1、简介:和js一样ts也有变量作用域。即指定变量存在的位置。
2、分为三种:
(1)全局作用域:在结构外面,可以在任何地方使用。
(2)类作用域:类变量声明在一个类里面,但在类的方法外面。该变量可以通过类的对象来访问,类变量也可以是静态的,静态的变量可以通过类名直接访问。
(3)局部作用域:就只能在声明他的代码块里使用。
例:(官方例)
以上代码是ts中。
以上代码是运行后的js中代码。
最后的输出结果为:
全局变量为: 12
10
实例变量: 13
而我们在函数外调用局部变量local_num则会报错。