H5W3
当前位置:H5W3 > 其他技术问题 > 正文

【前端问题精选】ts函数参数(callback?:()=>void)和(callback?:void)有什么区别?

function render(callback?:()=>void): string
这句ts函数 参数的意思是callback的返回值是函数 返回函数的返回值是void

function render(callback?:void): string
这句ts函数 参数的意思是callback的返回值是void

我这样理解对吗?

回答:

你的理解没有什么问题,其实可以搞一个类型别名

type Callback = () => void;
function render(callback: Callback):string{}

回答:

callback?:()=>void, 表示的时callback是函数类型且没有返回值, 并不是说返回值是函数, 这里的写法是ts自己的,不仅仅是箭头函数的意思, 还指定了函数的形参类型和返回值,

callback?:void不能证明callback是函数, ts会认为callback是void类型, 你传函数肯定报错。

本文地址:H5W3 » 【前端问题精选】ts函数参数(callback?:()=>void)和(callback?:void)有什么区别?

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址