大家好,我是半夏👴,一个热爱分享的前端程序员(半吊子后端程序员).如果喜欢我的文章,可以关注➕ 点赞 👍 加我微信:frontendpicker,一起学习交流前端,成为更优秀的工程师~关注公众号:搞前端的半夏,了解更多前端知识! 点我探索新世界!
https://blog.csdn.net/shangyanaf/category_11822476.html
TypeScript提供了多种数据类型,通过类型对变量进行限制,称之为类型注解,使用类型注解后,不能随意变更变量的数据类型。
例如C/C++定义一个整型数据,使用int限制变量的类型。
int age = 13;
在TypeScript中,类型注解使用:数据类型
语法。
let variableName: type;
let variableName: type = value;
const constantName: type = value;
例如我们想声明一个Number类型的变量,我们可以这样编写代码:
let num: number = 123;
约定了具体的类型,只能赋值该类型的值!
num = "123"
JavaScript 的类型分为两种:原始数据类型(Primitive data types)和对象类型(Object types)。
原始数据类型包括:boolean、number、string、null
、undefined
以及 ES6 Symbol
和 ES10 BigInt
。
TypeScript 中的所有数字都是浮点数(number)或大整数(bigint)类型。浮点数具有类型number
,而大整数具有类型bigint
。
与 JavaScript 一样,TypeScript 支持十进制、十六进制、二进制和八进制的数字:
可以只声明一个变量:
let age: number;
也可以初始化一个变量
let age:number = 18
let num: number = 100;
二进制数使用前导零,后跟小写或大写字母“B”,例如,0b
或0B
let num2: number = 0b10;
console.log(num2) //2
八进制数在字母后使用前导0o
。后面0o
的数字是范围内的0
数字7
:
let num8: number = 0o10
console.log(num8) //8
十六进制数字使用前导零,后跟小写或大写字母X
(0x
或0X
)。后面的数字0x
必须在 ( 0123456789ABCDEF
) 范围内。
let num16: number = 0xA
console.log(num16); //10
BigInts 是 ECMAScript 中即将提出的提案的一部分,理论上允许我们任意大的整数。Typescript在3.2版本为BigInts 提供了类型检查:bigInts
。我们可以通过BigInts()
构造函数或者任意数字末尾加n来创建一个大数。
let numBig: bigint = 100n;
let numBig: bigint = 100n;
与 JavaScript 一样,TypeScript 字符串使用双引号 ( "
) 或单引号 ( '
),使用:string
来定义类型 。
let userName: string = "半夏";
同时,TypeScript 支持模板字符串的写法。
let desc:string=`我是一个前端程序猿,
同时也是半吊子后端`;
TypeScript使用:boolean
定义布尔类型,允许两个值true
和false
let isBoy: boolean = true;
在ts中,分别使用:null
和:undefined
来定义null 与 undefined
const undef: undefined = undefined;
const nul: null = null;
undefined表示未分配值,这意味着一个变量已被申明单尚未被赋值。null表示这里优质,但是确实个空值(许多编程语言中,都使用nulll来表示没有值)。
关于这两者在TS中的区别,在后面的文章会详细介绍。
TypeScript使用:symbol
定义Symbol类型.
const symbolVariable: symbol = Symbol('symbol');