segmentfaultsegmentfault
注册登录
产品
社群
使用“Bing”搜本站使用“Google”搜本站使用“百度”搜本站✓站内搜索
注册登录
问答博客资讯标签用户活动

logo极客观点logo项目管理logoHarmonyOS
开发者社区

javascript
前端
python
node.js
react
vue.js
php
laravel
go
人工智能
mysql
linux
ios
java
android
css
typescript
spring
程序员

logoONES 研发管理logo思否企业问答logo安谋科技 XPU
问答博客资讯标签用户活动

logo极客观点logo项目管理logoHarmonyOS
开发者社区

javascript
前端
python
node.js
react
vue.js
php
laravel
go
人工智能
mysql
linux
ios
java
android
css
typescript
spring
程序员

logoONES 研发管理logo思否企业问答logo安谋科技 XPU

typescript如何定义一个类型为number,但是不能为200?

头像
黒之染
    3.1k61225248
    发布于
    2020-05-20
    更新于
    2020-05-22
    type Not200 = Exclude<number, 200>

    发现上面这种是不行的

    ps. 希望可以用在变量声明上,让let a:Not200 = 200能报错

    Microsofttypescript
    阅读 1.8k
    1 个回答
    得票最新
    头像
    XYShaoKang
      3.3k1415
      发布于
      2020-05-21

      可以用泛型来约束

      type Not200<T> = T extends 200 ? never : number

      演示使用

      // 以下两种方式都可以
      // declare function fn<T extends Not200<U>, U = T>(value: T): void;
      declare function fn<T>(value: T & Not200<T>): void;
      fn(200); // error
      fn(201); // ok...

      ts-playground-not200.png

      在 TS Playground Link 中查看

      参考

      • https://github.com/microsoft/...
      查看全部 1 个回答
      推荐问题
      • 动态参数请求后台服务未发送,如何解决?
        在画面点击按钮F2(查询)请求服务发送不到后台,之前用写死的方法(configId_INQ.value换成"MMHRD20Q2_INQ")是可以发送请求服务的,并返回查询的数据,就是下面这个服务:

        1 回答935 阅读

      logo
      Microsoft
      子站问答
      访问
      相似问题
      • typescript如何定义 arr 的类型?

        3 回答2k 阅读

      • typescript 如何定义一个OneOf类型?

        1 回答4.7k 阅读✓ 已解决

      • typescript类型定义问题?

        3 回答2k 阅读

      • TypeScript 类型定义问题

        2 回答1.8k 阅读✓ 已解决

      • typescript类型定义问题?

        1 回答1.4k 阅读

      找不到问题?创建新问题
      宣传栏
      思否旗下产品
      SegmentFault
      思否企业服务
      思否公开课
      思否企业问答
      ONES 旗下产品
      ONES
      Tower
      为知笔记
      企业问答
      ONES.com
      项目管理百科
      资源
      每周精选
      用户排行榜
      帮助中心
      建议反馈
      声望
      勋章
      合作
      关于我们
      广告投放
      联系我们
      合作伙伴
      关注
      产品技术日志
      社区运营日志
      市场运营日志
      社区访谈
      条款
      服务协议
      隐私政策
      下载 App

      Copyright © 2011-2025 SegmentFault. 当前呈现版本 25.06.09

      浙ICP备15005796号-2浙公网安备33010602002000号ICP 经营许可 浙B2-20201554

      杭州堆栈科技有限公司版权所有

      思否 - 凝聚集体智慧,推动技术进步