05 # 基本类型

在这里插入图片描述

类型注解

作用:相当于强类型语言中的类型声明

语法: (变量/函数): type

原始类型:

let bool: boolean = true;
let num: number = 313;
let str: string = 'kaimo';

数组:

let arr: number[] = [1, 2, 3];
let arr2: Array<number | string> = [1, 2, 3, '4'];

元组:是一种特殊的数组,它限定了数组元素的类型和个数

let tuple: [number, string] = [1, '2'];

元组越界访问,tuple[2] 会提示报错,开发中不建议这样使用

tuple.push(2)
console.log(tuple); // [1, '2', 2]
tuple[2]

函数

let add = (a: number, b: number) =>  a + b;
// 定义函数类型
let compute: (x: number, y: number) => number;
compute = (a, b) => a + b;

对象

// 下面这种事不容许的
let obj: object = { name: 'kaimo', age: 18 };
obj.age = 313; // 报错 `类型“object”上不存在属性“age”。`
// 需要制定成员类型
let obj1: { name: string, age: number } = { name: 'kaimo', age: 18 };
obj1.age = 313; 

Symbol 具有唯一的值

let s1: symbol = Symbol();
let s2 = Symbol();
console.log(s1 === s2);

undefined、null

let u: undefined = undefined;
let n: null = null;

num 不能赋值为 undefined 和 null,需要开启 tsconfig.json 配置

"strictNullChecks": false

void 没有任何返回值的类型

let noReturn = () => {};

any 任意类型,不指定类型,可以任意的给其赋值

let x;
x = 1;
x = [];
x = () => {};

never 永远不会有返回值的类型

  • 函数中,抛出错误
  • 死循环
let error = (msg: string) => {throw new Error(msg)
};
let infiniteLoop = () => {while (true) {}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/230743.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网关路由器双栈配置中的IPv6相关选项解析

1、引言 讲知识往往是枯燥无味的&#xff0c;我们先从问题入手。家庭网关&#xff08;光猫&#xff09;、路由器是我们每个人或多或少都有所接触的2种设备。现在一般都是光纤入户&#xff0c;通常每个家庭配备一个光猫和一台家用路由器。 目前有许多网络服务已经提供了IPv6支…

五、初识FreeRTOS之FreeRTOS的任务创建和删除

本节主要学习以下内容&#xff1a; 1&#xff0c;任务创建和删除的API函数&#xff08;熟悉&#xff09; 2&#xff0c;任务创建和删除&#xff08;动态方法&#xff09;&#xff08;掌握&#xff09; 3&#xff0c;任务创建和删除&#xff08;静态方法&#xff09;&#xf…

UE 事件分发机制(二) day10

自定义事件分发机制 自建事件分发机制与结构 Unreal推荐的游戏逻辑开发流程 基于 Unreal推荐的游戏逻辑开发流程&#xff0c;一般我们的整体规划也就是这样 大致结构类图 创建接口类与管理类以及所需函数 新建一个Unreal接口类作为接口 然后创建一个蓝图函数库的基类 Ev…

uniapp小程序项目连接微信客服【最新/最全教程】

目录 文档微信官网文档图片微信小程序客服配置官网 效果图聊天地址手机微信电脑端 微信聊天功能实现微信小程序后台添加客服微信号以及配置代码实现参考最后 文档 微信官网文档 微信官网文档 图片 微信小程序客服配置官网 微信小程序客服配置官网 效果图 聊天地址 地址 手…

LESS的叶绿素荧光模拟实现——任意波段荧光模拟

目录 前言一、任意波段荧光模拟的实现二、需要注意的输入参数 前言 此专栏默认您对LESS (LargE-Scale remote sensing data and image Simulation framework) 模型和叶绿素荧光(Sun-Induced chlorophyll Fluorescence, SIF)有一定的了解。当然&#xff0c;您也可以在这里下载中…

单片机中断系统的应用

中断系统是单片机中非常重要的组成部分&#xff0c;它是为了使单片机能够对外部或内部随机发生的事件实时处理而设置的。中断功能的存在&#xff0c;在很大程度上提高了单片机实时处理能力&#xff0c;它也是单片机最重要的功能之一&#xff0c;是我们学习单片机必须掌握的重要…

Python自动化测试数据驱动解决数据错误

数据驱动将测试数据和测试行为完全分离&#xff0c;实施数据驱动测试步骤如下&#xff1a; A、编写测试脚本&#xff0c;脚本需要支持从程序对象、文件或者数据库读入测试数据&#xff1b; B、将测试脚本使用的测试数据存入程序对象、文件或者数据库等外部介质中&#xff1b;…

解决msvcr71.dll丢失5个方法,修复程序运行缺失dll问题

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“msvcr71.dll丢失”。这个错误提示通常出现在运行某些程序或游戏时&#xff0c;给使用者带来了很大的困扰。那么&#xff0c;究竟是什么原因导致了msvcr71.dll文件的丢失呢&#xff1f;本文…

大数据之HBase

HBase介绍 Apache的三篇论文&#xff0c;GFS谷歌文件系统->HDFS&#xff1b;MR -> MR ; BigTable ->HBase;HBase是hadoop数据库&#xff0c;一种分布式、可扩展的大数据NoSQL数据库之一。适合对于大量数据进行随机、实时的读写操作 HBase数据模型 Bigtable是一个稀…

hql面试题之上海某资深数仓开发工程师面试题-求不连续月份的月平均值

1.题目 A,B两组产品的月平均值&#xff0c;月平均值是当月的前三个月值的一个平均值&#xff0c;注意月份是不连续的&#xff0c;如果当月的前面的月份不存在&#xff0c;则为0。如A组2023-04的月平均值为2023年1月的数据加2023-02月的数据的平均值&#xff0c;因为没有其他月…

Matrix电磁阀详解

文章目录 一. 气动电磁阀流量控制技术1. PWM技术2. PFM技术3. PNM技术4. PCM技术5. 组合技术&#xff08;Combined Techniques&#xff09;6. 双张力开关控制技术&#xff08;ON -OFF control Technique with double level of tension&#xff09; 二. Matrix电磁阀特性1. Matr…

史上最全接单平台集锦,程序员不容错过!

非典型程序员不是每天都累成狗&#xff0c;天天”996"甚至”007“。可能&#xff0c;面临着上班摸鱼没事干&#xff0c;下班躺尸打游戏的无聊境况。那么&#xff0c;如果你也是这样的程序员&#xff0c;有没有什么安排可以打发时间&#xff1f; 闲着还不如挣钱~心情好的时…