原始数据类型

2023-05-10  本文已影响0人  不落05

原始数据类型包括:布尔值、数值、字符串、nullundefined 以及 ES6 中的新类型 Symbol 和 ES10 中的新类型 [BigInt]

布尔值

let isDone: boolean = false;
// 编译通过

let isVisible: boolean = Boolean(1);
// 编译通过
let isVisible: boolean = new Boolean(1);
// 编译失败
// 因为Javascript,通过new生成返回的是一个包装对象,至于普通的boolean值可以调用Boolean对象上的方法是因为通过原型链的原因

数值

let decLiteral: number = 6;
let hexLiteral: number = 0xf00d;
// ES6 中的二进制表示法
let binaryLiteral: number = 0b1010;
// ES6 中的八进制表示法
let octalLiteral: number = 0o744;
let notANumber: number = NaN;
let infinityNumber: number = Infinity;

编译结果:

var decLiteral = 6;
var hexLiteral = 0xf00d;
// ES6 中的二进制表示法
var binaryLiteral = 10;
// ES6 中的八进制表示法
var octalLiteral = 484;
var notANumber = NaN;
var infinityNumber = Infinity;

其中 0b10100o744 是 ES6 中的二进制和八进制表示法,它们会被编译为十进制数字。
注意,16进制不会被转换,另NaN本身也是一个数字类型,Infinity也可以赋值给nubmer类型

字符串

可以使用string,也可以使用es6中的字符串模板写法。

空值

JavaScript 没有空值(Void)的概念,在 TypeScript 中,可以用 void 表示没有任何返回值的函数:

function alertName(): void {
    alert('My name is Tom');
}

声明一个 void 类型的变量没有什么用,因为你只能将它赋值为 undefined 和 null(只在 --strictNullChecks 未指定时):

let unusable: void = undefined;

Null 和 Undefined

在 TypeScript 中,可以使用 nullundefined 来定义这两个原始数据类型:

let num: number = undefined;

// 这样也不会报错
let u: undefined;
let num: number = u;
上一篇 下一篇

猜你喜欢

热点阅读