反向TypeScript类型保护
Inverse TypeScript Type Guard
我将typescript
2.0.0与--strictNullChecks
和以下类型的防护装置一起使用:
function isNotOk(value: any): value is null | undefined {
if (typeof value === 'number') {
return !isFinite(value);
} else {
return value === null || value === undefined;
}
}
使null
、undefined
、NaN
和Infinite
失效。我想要一个相反的:
export function isOk(value: any): value is not null | undefined {
return !isNotOk(value);
}
当然,这种语法不起作用。有没有已知的方法来实现这一点?
我偶然发现了答案;泛型。只是以相反的方式缩小:
function isOk<T>(value: T | null | undefined): value is T {
return !isNotOk(value);
}
相关文章:
- 为什么会出现错误;未捕获的类型错误:undefined不是函数;
- 如何在DOM元素上按类型构建此函数
- 同样,同样的错误'ahorcado.js:26未捕获类型错误:无法读取属性'beginPath'
- YUI3 IO实用程序是否可以根据给定的内容类型标头值自动序列化数据
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- 如何从querySelectorAll中获取按钮类型
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 如何将具有文本类型值的var放入jQuery函数中
- javascript解释器如何理解变量的数据类型
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 可变大小的JavaScript字符串如何成为基元类型
- AngularJS指令只识别双向绑定类型
- 在<输入类型=“;文件“/>
- 从查询字符串参数推断出正确的数据类型
- 未捕获的类型错误:无法读取属性'删除'的未定义
- 为什么不'我们在javascript中使用函数参数的数据类型
- Javascript 可选类型提示
- 是输入类型=“”;密码”;保护
- 反向TypeScript类型保护
- 是否有任何受保护的文件类型在被运行WebMatrix的站点访问时返回404 ?