TypeScript类型 : any,unknown,void,never,tuple

TypeScript 是 JavaScript 的超集,并且添加了一些静态类型的特性。在 TypeScript 中,有多种内建的数据类型,以下是其中一部分:

  1. any: 表示任意类型,可以赋予任何类型的值。



let x: any = 1;       // x 是一个数字
x = 'Hello';          // x 是一个字符串
x = true;             // x 是一个布尔值
  1. unknown: 表示未知类型,它是 any 类型的安全版本,不能直接赋值给其他类型,需要进行类型检查。



let x: unknown = 1;        // x 是一个数字
let y: number = x;         // 错误:不能将 unknown 赋值给 number
 
if (typeof x === 'number') {
    let y: number = x;     // 正确:类型检查通过
}
  1. void: 表示没有任何类型,通常用作函数没有返回值的返回类型。



function hello(): void {
    console.log('Hello');
}
  1. never: 表示永远不会发生的值的类型。通常用作抛出错误或进入无限循环的函数表达式或箭头函数的返回类型。



function error(message: string): never {
    throw new Error(message);
}
 
function infiniteLoop(): never {
    while (true) {
    }
}
  1. tuple: 表示一个固定长度的数组,每个位置都有特定的类型。



let x: [string, number];
x = ['Hello', 123];       // 正确
x = [123, 'Hello'];       // 错误:类型不匹配

注意:以上代码示例均为 TypeScript 代码,需要在 TypeScript 环境中运行。

评论已关闭

推荐阅读

Vue中使用mind-map实现在线思维导图
2024年08月04日
VUE
Web前端最全Vue实现免密登录跳转的方式_vue怎么样不登录返回首页,最强技术实现
2024年08月04日
VUE
vue3 项目搭建教程(基于create-vue,vite,Vite + Vue)
2024年08月04日
VUE
Vue-颜色选择器实现方案——>Vue-Color( 实战*1+ Demo*7)
2024年08月04日
VUE
Vue项目卡顿慢加载?这些优化技巧告诉你!_vue数据多渲染卡顿
2024年08月04日
VUE
vue中的keep-alive详解与应用场景
2024年08月04日
VUE
Vue、React实现excel导出功能(三种实现方式保姆级讲解)
2024年08月04日
vue-office/docx插件实现docx文件预览
2024年08月04日
VUE
java调用js文件的两种方法(支持V8引擎)
2024年08月04日
JavaScript:解决计算精度问题/mathjs/bignumber.js/big.js/decimal.js
2024年08月04日
两周从爬虫小白变大神 _yjs_js_security_passport
2024年08月04日
JS笔记(对象、函数、数组)
2024年08月04日
Markdown.js:强大的纯JavaScript Markdown解析器
2024年08月04日
Vue项目:js模拟点击a标签下载文件并重命名,URL文件地址下载方法、请求接口下载文件方法总结。
2024年08月04日
vue 父组件怎么获取子组件里面的data数据
2024年08月04日
VUE
个人开发实现AI套壳网站快速搭建(Vue+elementUI+SpringBoot)
2024年08月04日
el-table 表格封装并改造实现单元格可编辑
2024年08月04日
none
nodejs环境下创建vue项目、SSH密钥登陆!!!
2024年08月04日
vue+quill+element-ui实现视频、图片上传及缩放保姆级教程,轻松使用富文本
2024年08月04日
【three.js】22. Imported Models导入模型
2024年08月04日