[Typescript] 152 Medium - IsOdd
return true is a number is odd
/* _____________ Your Code Here _____________ */
type LastChar<T extends string> = T extends `${infer First}${infer Rest}`
? Rest extends ""
? First
: LastChar<Rest>
: never;
type IsOdd<T extends number> = `${T}` extends `${infer _}.${infer __}`
? false
:`${T}` extends `${infer _}e${infer __}`
? false
: LastChar<`${T}`> extends '1' | '3' | '5' | '7' | '9'
? true
: false;
/* _____________ Test Cases _____________ */
import type { Equal, Expect } from '@type-challenges/utils'
type cases = [
Expect<Equal<IsOdd<5>, true>>,
Expect<Equal<IsOdd<2023>, true>>,
Expect<Equal<IsOdd<1453>, true>>,
Expect<Equal<IsOdd<1926>, false>>,
Expect<Equal<IsOdd<2.3>, false>>,
Expect<Equal<IsOdd<3e23>, false>>,
Expect<Equal<IsOdd<number>, false>>,
]
分类:
TypeScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2023-05-15 [Rust] Collect()
2019-05-15 [Functional Programming] Week logic
2018-05-15 [Javascript] Getter and Setter Abstractions
2017-05-15 [Recompose] Flatten a Prop using Recompose
2017-05-15 [Recompose] Lock Props using Recompose -- withProps
2017-05-15 [Recompose] Transform Props using Recompose --mapProps
2017-05-15 [Recompose] Add Lifecycle Hooks to a Functional Stateless Component using Recompose