TypeScript教程# 3:TS的类型声明

Posted 凯小默

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TypeScript教程# 3:TS的类型声明相关的知识,希望对你有一定的参考价值。

说明

尚硅谷TypeScript教程(李立超老师TS新课)学习笔记。

类型声明

  • 类型声明是TS非常重要的一个特点
  • 通过类型声明可以指定TS中变量(参数、形参)的类型
  • 指定类型后,当为变量赋值时,TS编译器会自动检查值是否符合类型声明,符合则赋值,否则报错
  • 简而言之,类型声明给变量设置了类型,使得变量只能存储某种类型的值

语法:

let 变量:类型;
let 变量:类型 =;
function fn(参数:类型,参数:类型):类型
	

自动类型判断

  • TS拥有自动的类型判断机制
  • 当对变量的声明和赋值是同时进行的,TS编译器会自动判断变量的类型
  • 所以如果你的变量的声明和赋值时同时进行的,可以省略掉类型声明

例子

新建 02.basis.ts 文件

// 声明一个变量a,同时指定它的类型为number
let a: number;
// a的类型设置为了number, 在以后的使用过程中a的值只能是数字

a = 10;
a = 33;

a = 'hello'; // 此行代码会报错,因为变量a的类型是number, 不能赋值字符明

let b: string;
b = 'hello';
b = 123; // 不能将类型“number”分配给类型“string”。


// 声明完变量直接进行赋值
// let c: boolean = false;
// 如果变量的声明和赋值是同时进行的,TS 可以自动对变量进行类型检测
let c = false;
c = true;
c = '111'; // 不能将类型“string”分配给类型“boolean”。


// JS 中的两数是不考虑参数的类型和个数的
// function sum(a, b)
//     return a + b;
// 
// console.log(sum(123, 456)); // 579
// console. log(sum(123, "456")); // "123456"
// 参数以及返回值需要时数字
function sum(a: number, b: number): number
    return a + b;

console.log(sum(123, 456)); // 579
console. log(sum(123, "456")); // "123456" 类型“string”的参数不能赋给类型“number”的参数。

执行 tsc

tsc 02.basis.ts

以上是关于TypeScript教程# 3:TS的类型声明的主要内容,如果未能解决你的问题,请参考以下文章

TypeScript教程# 4:TS中类型

TypeScript教程# 1:TS简介

TypeScript教程# 13:接口

TypeScript教程# 15:泛型

TypeScript教程# 2:TS开发环境搭建

TypeScript教程# 5:TS编译选项