typescript - 在 TypeScript 中为接受数字并返回字符串的函数编写类型
问题描述
我有这个问题,我不知道我的错误是什么?
为一个接受一个数字并返回一个字符串的函数编写一个类型。
https://www.executeprogram.com/courses/typescript/quizzes/writing-a-function-type
这是我的代码
type TakesNumberReturnsString = number
const numberToString = (x: TakesNumberReturnsString) => {
return x.toString
}
这些是结果
这是错误
>
function add1AndAppend1(x: number): string {
return (x + 1).toString() + 1
}
const f: TakesNumberReturnsString = add1AndAppend1
f(1)
Expected: '21' but got: type error: type error: Type '(x: number) => string' is not assignable to type 'number'.
这些都是好的结果
>
function add1AndAppend1(x: number): string {
return (x + 1).toString() + 1
}
const f: TakesNumberReturnsString = add1AndAppend1
f("hello")
Expected: type error: Argument of type '"hello"' is not assignable to parameter of type 'number'. OK!
>
function sayHello(x: undefined): string {
return 'hello'
}
const f: TakesNumberReturnsString = sayHello
f(undefined)
Expected: type error: Type '(x: undefined) => string' is not assignable to type 'TakesNumberReturnsString'. OK!
>
function add1(x: number): string {
return x + 1
}
const f: TakesNumberReturnsString = add1
f(1)
Expected: type error: Type 'number' is not assignable to type 'string'. OK!
4 tests, 1 failure```
解决方案
推荐阅读
- angular - 如何在 Angular 管道输出中添加换行符
- javascript - HTML5: video readystate === 4, 播放时静止视频挂起
- angular - 有没有办法在模板角度转换为任何类型
- dafny - dafny assert 可以处理“!false”吗
- linkedin - LinkedIn 网站分享始终显示 1 分钟阅读。有什么办法可以去掉标签吗?
- python - 如何通过发送 http 请求使用谷歌翻译
- python - 无法通过调用内部提交的存储过程来更新数据库
- anylogic - 带有动态事件的自定义流程图中的 Rack Pick
- r - R中的错误 - 列多于列名
- rust - 为什么开发依赖不能是可选的?