TypeScript入门指南(基础篇)

本文是 TypeScript 入门基础篇,介绍 TypeScript 的优势,如静态类型检查、IDE智能提示和类型声明作为文档。讨论了强类型与弱类型、动态与静态类型的区别,并详细讲解了 TypeScript 的基础类型、接口、函数、类和泛型等核心概念,旨在帮助初学者快速掌握 TypeScript。
摘要由CSDN通过智能技术生成

写在前面
ts是拥有类型系统的js的超集,近年来非常火热。可以这么说,ts才是真正意义上的js。虽然ts的官方文档非常全面,但是对于原来没有接触过ts的同学来说,全篇通读下来需要耗掉不少时间,这篇文章旨在为尝试入门ts的同学使用。

本文将从以下几部分进行总结:

TypeScript的优势
强类型与弱类型的区别
动态类型与静态类型的区别
基础类型
接口类型
函数

泛型

TypeScript的优势
1.帮助更好地重构代码
一个好的代码习惯是常常对自己写的代码进行小的重构,使得代码可维护性更强。但是对于很多线上运行的代码,代码测试覆盖率往往不是很高,有时候哪怕一个变量名的改动,都会牵一发而动全身。而对于使用ts编写的项目就不会有这种担心。ts的静态检查特性会帮助找出代码中有错误的部分。
2.vscode等IDE的提示更加智能
js是一门动态弱类型解释语言,变量声明后可以改变类型,而且类型需要在运行时才能确定。而ts的报错提示是在编译时,不是在运行时。所以使用ts带来的静态类型检查等特性将使得IDE的提示更加完善。
3.类型声明本身就是非常好的文档
当你接手一个有历史包袱的项目时,肯定会头疼于文档和代码注释的缺失,而对于ts来说,是可以做到代码即文档的,通过声明文件可以知道哪些字段的含义以及哪些字段是必填和选填的。举个简单例子,当封装一个button的组件时:

export interface ButtonProps {
style?: React.CSSProperties
className?: string
label?: React.ReactNode
type?: ‘primary’ | ‘default’ | ‘search’
size?: ‘sm’ | ‘md’ | ‘lg’ | ‘mini’
disabled?: boolean
title?: string
onClick?: ((e: React.MouseEvent) => void)
}
复制代码通过这些声明文件可以知道,当使用这个button文件时,style是一个可选值,表示一个可以自定义样式的style字段。type也是一个可选值,表示按钮的颜色类型,可以选择’primary’,‘default’,'mini’其中的一种。disabled也是一个可选值,传入的值必须是boolean类型。所以就可以看出类型声明本身就是非常好的文档。
强类型与弱类型的区别
强类型语言: 强类型语言不允许改变变量的数据类型,除非进行强制类型转换。
例如:如果定义了一个字符串变量str,如果没有进行强制类型转换,是把str不能当作布尔值,整型等非字符型进行处理的。c,c++,Java等都是强类型语言。
弱类型语言: 定义与强类型语言相反,一个变量可以被赋予不同数据类型的值。
var a = ‘111’;
var b = 222;
a = b;
console.log(a) // 222
复制代码如以上的js代码所示,a是一个字符串变量,b是一个整型变量,但是却可以把b赋值给a,把a打印出来的值是222。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值