React Native && TypeScript: 一、为什么使用TypeScript

TypeScript是由微软开源的一种JavaScript超集语言,它不仅包含当前Javascript的特性,而且实现了esnext提案。TypeScript的宗旨是为JavaScript提供可靠的类型检查,避免出现意大利面条式的代码,在大型的项目中让源码更加可控。

优势劣势

TypeScript强类型 IDE支持好 编码规范私有标准 使用较少 语法差异小 必须编译

Javascript官方标准 应用广泛弱类型 IDE支持差

CoffeeScript强类型 高级特性支持特性es6支持 语法差异大 必须编译

在TypeScript出现之前,JavaScript也出现了多种方言,但是语法都与JavaScript差异太大,使用门槛过高,对JavaScript第三方库不兼容。TypeScript语法与JavaScript相似,入门门槛极低,对于JavaScript编写的第三方类库通过提供.d.ts type文件兼容,目前较为流行的类库都可以兼容TypeScript。

JavaScript是弱类型语言,而且由于语法过于灵活,在实际编码中很容易导致错误出现,特别是在大型的项目中。TypeScript很好的避免了这些问题,对于数据描述提供interface,这也是TypeScript的核心所在。

JavaScript在声明函数时,参数没有类型,而且返回也没有类型,使用和维护都带来一定的困难。

functionadd(a, b){returna + b;}

TypeScript则需要声明函数的参数和返回值,在变量初始化的时候需要声明类型,也可以通过类型推导自动声明,相较与JavaScript并没有带来多大的工作量。

leta =1;letb: number =1;functionadd(a: number, b: number):number{returna + b;}

Typescript的interface可以很方便的声明数据的结构,可以通过?声明哪些数据是可选的。

interfaceUser{  name: string;  age?: number;}constu: User = {name:'name', age:1};// 正确constu: User = {name:'name'};// 正确constu: User = {name:1};// 错误提示类型不匹配constu: User = {};// 错误提示name不存在

在app开发的过程中,情况往往比web开发更加复杂,而且需要不断的重构,所以使用TypeScript是一个非常不错的选择。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容