ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
[TOC] >[success] # 原始数据类型和 Any 类型 在讲解 **Typescript** 之前,首先看一下 [javascript 的数据类型](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Data_structures) 是分为 **2 大类** ,分为 **原始类型** 与 **对象类型** ,本章讲解 **原始类型** >[success] ## 原始数据类型 什么是 **原始类型** , **原始类型** 都有哪些? **原始类型** 有 **7 种** 如下: * **Boolean** * **Null** * **Undefined** * **Number** * **BigInt** * **String** * **Symbol** 代码如下: **basic-types.ts** ~~~ // Boolean类型 let isDone:boolean = false // Number类型 let age:number = 10 // String类型 let firstName:string = 'viking' let message:string = `Hello ${firstName}` // Undefined类型 let u:undefined = undefined // Null类型 let n:null = null // Undefined 和 Null 是所有类型的子类型, Undefined 与 Null 类型变量,可以赋值给所有类型,代码如下 // undefined 赋值不会报错 let num1:boolean = undefined let num2:number = undefined let num3:string = undefined let num4:undefined = undefined let num5:null = undefined let num6:any = undefined // null 赋值不会报错 let num7:boolean = null let num8:number = null let num9:string = null let num10:undefined = null let num11:null = null let num12:any = null ~~~ >[success] ## Any 类型 假如说现在有这样一个需求, 我们可能要一个第三方系统, **系统输入的值是什么类型,我们不知道,不输入我门无法知道它们是什么类型** ,这个时候我们可以使用 **Any 类型** ,意思是 **允许赋值为任意类型** ,代码如下: **basic-types.ts** ~~~ // 允许赋值为任意类型 let notSure:any = 4 // 赋值成 string 类型 notSure = 'maybe a string' // 赋值成 boolean 类型 notSure = true // 调用属性以及方法也不会报错 notSure.myName notSure.getName() ~~~