typescript之基础类型
基础类型分为:数字、字符串、数组、元组、枚举、Any、Object、Null、Undefined、Never、Void
各种类型写法如下:
1.数字(number)
let num:number = 1;
2.字符串(string)
let str:string = 'test'
3.数组
多种写法
1.类型加中括号, type+[],例:
let arr:number[]=[1,2,3] // 纯数字数组
2. 数组泛型Array<number>
let arr:Array<number> = [1,2,3]
4.元组
表示一个已知元素数量和类型的数组
let yArr:['string',number] = [ 'test', 1 ]; 表示有两个已知类型的成员,注意:可只声明,后续通过下标赋值
ps:官网上有说 越界的元素(即通过例:yArr[2]=1或push的方式添加元素)测试报错,暂时保留意见
5.Any
未指定类型,且通过类型推论得不到类型的情况被视为any类型,
let a; // 未声明类型,且类型推论得不到结果的情况视为any类型,any类型不经过类型检测
6.枚举
enum关键字声明,后续详细说明
7.Object
object
表示非原始类型,也就是除number
,string
,boolean
,symbol
,null
或undefined
之外的类型。
8.Void
与any相反,表示没有任何类型,声明void类型没什么用,只能给它赋值undefined、null,通常用它来表示函数没有返回值:
function fn():void{
}
9.Null和Undefined
TypeScript里,undefined
和null
两者各自有自己的类型分别叫做undefined
和null
。 和 void
相似,
它们的本身的类型用处不是很大,默认情况下null
和undefined
是所有类型的子类型。 就是说你可以把 null
和undefined
赋值给number
类型的变量。
10.Never
never
类型表示的是那些永不存在的值的类型。
类型声明相关:
类型推论: 当未明确指出类型时,ts会根据初始值来进行推论,例如:
let num = 1;
此时未明确给出num的类型,但ts会根据你初始值为数字类型而推论出num的类型为number类型,当再次赋值为其他类型时就会报错
num = ‘test’; //error! Type '"test"' is not assignable to type 'number'
如果声明时未赋值,let num;此时ts无法推论出num的类型,将会认为它是any类型,后面将不会对它进行任何类型检测
类型断言:告诉编译器 “把这个变量当作xx类型来处理”,例如:
typescript之基础类型的更多相关文章
- TypeScript 之 基础类型、高级类型
基础类型:https://m.runoob.com/manual/gitbook/TypeScript/_book/doc/handbook/Basic%20Types.html 高级类型:https ...
- TypeScript 素描-基础类型
博文读自 TypeScript 官方文档而来,不具有学习性,仅是本人学习时记录以供日后翻阅 ,有学习TypeScript的朋友还请去看更为详细的官方文档 TypeScript官网文档中的基础类型, T ...
- 学习笔记:TypeScript入门——基础类型
前言: TypeScript官网断断续续看过几遍,不知道项目中如何使用,有机会还是要实践一下.现在再把文档上不懂的知识点理一遍. 基础类型 1.什么是元组Tuple? 元组类型允许表示一个已知元素数量 ...
- typescript 添加基础类型的扩展方法
以时间转换为案例: //声明接口,也是在声明date这个基础类型要定义一个format的扩展方法,不写接口声明会报错 interface Date { Format(fmt:string):strin ...
- Typescript基础类型
1.布尔值__boolean 2.数字__number----除了支持十进制和十六进制字面量,Typescript还支持ECMAScript 2015中引入的二进制和八进制字面量. 3.字符串__st ...
- TypeScript学习笔记之基础类型
从今天开始学习typescript了,记录ts学习点滴,最后,使用ts结合nodejs开发后端应用,一起共勉吧: typescript最新版本2.6,所有演示代码均基于此版本 开始之前确定安装了如下n ...
- TypeScript基础类型,类实例和函数类型声明
TypeScript(TS)是微软研发的编程语言,是JavaScript的超集,也就是在JavaScript的基础上添加了一些特性.其中之一就是类型声明. 一.基础类型 TS的基础类型有 Boolea ...
- TypeScript完全解读(26课时)_2.TypeScript完全解读-基础类型
2.TypeScript完全解读-基础类型 src下新建example文件夹并新建文件.basic-type.ts.截图中单词拼错了.后需注意一下是basic-type.ts 可以装tslint的插件 ...
- TypeScript(3)基础类型
基础类型 TypeScript 支持与 JavaScript 几乎相同的数据类型,此外还提供了实用的枚举类型方便我们使用. 布尔值 最基本的数据类型就是简单的true/false值,在JavaScri ...
随机推荐
- 20-ESP8266 SDK开发基础入门篇--C# TCP客户端编写 , 加入数据通信
https://www.cnblogs.com/yangfengwu/p/11192594.html 自行调整页面 连接上以后主动发个数据 namespace TCPClient { public p ...
- 用Python操作MySQL(pymysql)
用python来操作MySQL,首先需要安装PyMySQL库(pip install pymysql). 连接MySQL: import pymysql connect=pymysql.connect ...
- 【JZOJ6222】【20190617】可爱
题目 给定一个长度为\(n\)的串,定义两个串匹配当且仅当两个串长度相同并且不同字符至多一个 对于每一个长度为\(m\)的子串输出和它匹配的子串个数 $1 \le n \le 10^5 , m \ ...
- 这里是DDOSvoid的blog
由于博主已经退役,博客现由 @一扶苏一 代为维护. DDOSvoid 在生前退役前写下了大量的 blog 存在本地,现在由他的弟子 一扶苏一 整理编纂成为题单慢慢上传,是为<论语>< ...
- GoCN每日新闻(2019-10-24)
GoCN每日新闻(2019-10-24) GoCN每日新闻(2019-10-24) 1. 学习Golang之服务器框架编写 – CS网络通信 http://1t.click/aJag 2. 如何实现 ...
- VSCode 本地如何查看历史页面
1.首先要在VSCode的扩展中安装一个 Local history插件,蓝色框部分不用管,直接安装即可 2.安装并操作:安装后,修改 productManage/supplierList/addSu ...
- 算法练习题---罗马数字转int
连接:https://leetcode-cn.com/problems/roman-to-integer/submissions/ 题目: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 ...
- CTF SSTI(服务器模板注入)
目录 基础 一些姿势 1.config 2.self 3.[].() 3.url_for, g, request, namespace, lipsum, range, session, dict, g ...
- 项目启动tomcat失败的几种可能原因和解决方法
传送门:https://blog.csdn.net/u010565910/article/details/80411468 总结一下tomcat启动问题,也给自己做个笔记 , 逐渐补充完善. 1.ja ...
- git 清除所有untracked file
上次合并分支的时候,出现了一些没见过的文件,有.orig等等.如下图: 接下来,就是git的神奇操作命令: git clean -f 将所有untracked file 一次性删除