如何解决为使用数字并返回字符串的函数编写类型
我遇到了这个问题,我不知道我的错误是什么?
为需要数字并返回字符串的函数编写类型。
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```
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。