| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> TypeScript技术(三)基础类型学习!! -> 正文阅读 |
|
[JavaScript知识库]TypeScript技术(三)基础类型学习!! |
目录 简介TypeScript的定义以及优势,想必大家在前几篇文章中都已经学习到了;接下来,我们开始学习一下TypeScript中的Type也就是数据类型,每一个技术都有它自己对应的声明方式以及类型的定义。 让我们一起学习以下知识吧!!!! TypeScript的类型TypeScript与普通的Javascript最大的区别就是对类型的强定义。它给JavaScript带来了多种基本类型,同时程序员也可以定义类型。 基本类型?其他类型?高级类型
各类型介绍Number数字类型对数字的定义只有一个很笼统的number来表示;既能表示整数、也能表示浮点数,甚至也可以表示正负数。 例如:1,5.3,-10 从本质上来说,Javascript并没有严格区别各种类型之间差异,于是基于JS创建出来了TS,所以在TS中使用number数字类型进行表示,还可以极大限度的保留JS的灵活性。 String字符串类型举例:“hello”,‘hello’,`hello`? 第三个是反引号:``,可以创建一个字符串模板,可以实现分段跟行,和填充变量。 与JavaScript一致。 boolean布尔类型真 true、假 false Array数组类型数组:[] 数组中可以存放任意类型的数据 JS中数组的宽容度非常大,而TS也很好的继承了这一点 ? ? ?tuple元组类型Tiu破,踏破 联合Union类型一个变量同时支持多个类型,中间使用 | 分隔。 ?字面量类型可以理解为是联合Union类型的样子,只不过是换成了具体的值,而不是string|number这样的类型了。 ?可以看到,union3 = 4报错了,这也就证明,此刻union3只能包含0,1,2三个数值。 枚举Enum类型? ?可以看出,如果没有指定默认值,则会使用下标索引。 Any类型any顾名思义,就是不知道是什么,任何的,任意的。所以使用any类型,就是可以是任意类型。 unknown类型unknown不知道的意思,也就是说,不知道该变量是什么类型。但是能确保它是个未定义的属性,而不是函数。 ?如果不进行判断类型,则会报错。 void类型void就是没有返回值。表示该东西压根不存在。 ?可以看出,该函数就是void类型,不需要返回值。 undefined类型 undefined类型表示,变量没有初始化。 ?这样会报错,原因是没指定返回值。 void和undefined的区别:与undefined的区别不是一个语法问题,而是一个哲学问题。是区别存在于不存再的 问题。void表示本身压根不存在,undefined表示本身未初始化,但是存在。 never类型
?可以看出,该函数进入之后就直接抛出异常,可想而知,这个函数永远也不会执行到最后一个大口号,所以这样的就称为never类型。 类型适配Type Assertions通知TypeScript进行类型适配的过程就称为断言。 举例: 鼠标悬浮到message上,可以看到依然是any类型。所以就算我们给赋值为字符串,也不会改变初始类型。所以message不能使用专门针对字符串的endWith()内嵌函数的. ?在这种情况下,本意是想要称为字符串类型的,所以我们要明确给TypeScript该message是什么类型,所以这就用到了断言,也可以称为类型适配。 所以有两种使用断言的方式: ? ?注意:如果使用断言,则需要有信心保证不会出问题,不然很容易出类型相关的异常。。。 函数类型函数相信不用过多的跟大家说了吧,会JavaScript的朋友们,应该都很熟悉了,无处不在写函数。 ?或者es6的方式定义: ?TypeScript的方式,唯一区别就是再参数上可以明确指定类型。 再调用TypeScript的函数时如果有两个参数,则必须全部传入,而且类型必须一致,不然会报错。 错误的调用写法:? 总结TypeScript的基础类型语法,就讲到这里,在这里没有很详细的说,但是都是精髓,啊哈哈哈,肯定可以学会。再加上如果有的朋友学过python、JavaScript、Java这些语言的话,很快就可以上手。不管学什么,学多少,都要动手练习, 多动,多做,少说闲话,孰能生巧。加油吧,小伙伴们!!! 作者:筱白爱学习!! |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年4日历 | -2025/4/22 1:40:46- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |