likes
comments
collection
share

TypeScript1 基础类型

作者站长头像
站长
· 阅读数 51

基础类型(TS -- 1)

我认为这个TypeScript跟C语言

是很像的,对语言的定义都有严格的规范。

应群友要求补充如何在vscode中使用TS:其实你看小满第一个视频,开头就有说(我进行补充)

  1. 全局安装TSnpm install -g typescript
  2. 检查是否安装成功tsc -v
  3. 初始化生成配件文件tsc --init
  4. 设置实时TS代码转换成JS代码:shift+ctrl+B选择监视
  5. 然后写的TS编译成js,使用node在终端运行转换成功的js文件
let str:string = "这是字符串类型"
//上方我们将str这个变量定义为了string类型,如果对他输入其他类型的内容就会报错,例如:

let str:string = 666
//这个就会报错了,会提示你不能将类型"number"分配给类型"string"

let muban:string = `web${str}`
//我们也可以使用ES6中的模板字符串

let u:void = undefined
let u:void = null
//空值类型能够有这两种内容。void的内容也是不能去赋值给别人的
//某种程度上来说,void 类型像是与 any 类型相反,它表示没有任何类型。 当一个函数没有返回值时,你通常会见到其返回值类型是 void

function fnvoid():void{
    return//函数也可以定义为空值,如果定义了void则不能返回内容
}

//undefined跟null类型的也可以交换着用的,具体区别放在了下面

八种内置类型

let str: string = "jimmy";
let num: number = 24;
let bool: boolean = false;//这里接收的是布尔值,不是布尔值对象(let b:boolean = new Boolean())
let u: undefined = undefined;
let n: null = null;
let obj: object = {x: 1};
let big: bigint = 100n;
let sym: symbol = Symbol("me"); 

注意点

null 和 undefined

默认情况下 nullundefined 是所有类型的子类型。 就是说你可以把 nullundefined 赋值给其他类型。

// null和undefined赋值给string
let str:string = "666";
str = null
str= undefined

// null和undefined赋值给number
let num:number = 666;
num = null
num= undefined

// null和undefined赋值给object
let obj:object ={};
obj = null
obj= undefined

// null和undefined赋值给Symbol
let sym: symbol = Symbol("me"); 
sym = null
sym= undefined

// null和undefined赋值给boolean
let isDone: boolean = false;
isDone = null
isDone= undefined

// null和undefined赋值给bigint
let big: bigint =  100n;
big = null
big= undefined

如果你在 tsconfig.json 指定了 "strictNullChecks":truenullundefined 只能赋值给 void 和它们各自的类型。

number 和 bigint

虽然 numberbigint 都表示数字,但是这两个类型不兼容。

let big: bigint =  100n;
let num: number = 6;
big = num;
num = big;

会抛出一个类型不兼容的 ts (2322) 错误。

转载自:https://juejin.cn/post/7224426218929553469
评论
请登录