TypeScript- 泛型 React-native
2019-03-31 本文已影响0人
喜欢那只汪
TypeScript 为JS 带来了强类型特性,对于以前用OC这些强类型语言的小伙伴来说还是很熟悉,很习惯的,也很放心,要不然真的不知道自己传进去的参数到底是个啥玩意,特别是JS 把函数直接当参数传入.但是同时有些函数处理逻辑完全一样,唯一不同的就是参数类型,这就要考虑到使用泛型(Generic),来实现代码的抽象和复用
我们来看看具体事例
一. 函数用法
1 功能,与 2的功能都是返回传入的参数,但是1 很明显有警告,这就是typeScript 给出的为给定参数类型的警告,所以我们应该如 2 这样指定参数的类型.这两个函数功能是没有有区别,接下来我们就用泛型来改写这两个函数 如下
经过泛型的改写,我们可以在 stringValue 函数参数中传任何函数,使用如下
当然也可以指定返回的参数
二. 类泛型
类泛型一般用来筛选数据,特别用在网络请求的时候,筛选出指定条件的数据,用法如下:
1 和2是一种先声明后使用方式,在正式项目中应该这么用,给出明确定义,以及相关注释方便维护.
3 是使用定义的筛选类的使用方式,初始化时候传入处理条件,
JS 的泛型,跟Swift的泛型 基本一样,其实主要是用来限制类型,保证严谨的数据结构类型,保证程序按照设计者思路执行下去,提高程序的稳定性,杜绝一些类型不匹配的错误.