typescript - TypeScript - 输入函数的最佳方法?
问题描述
我正在学习 TypeScript,我有一个关于注释函数类型的问题。
看这个简单的例子:
export const add = (num1: number, num2: number):number => {
return num1 + num2;
};
这对我来说感觉很好。参数有一个类型,函数的返回类型也有注释。
现在考虑一下,这也是有效的语法:
export const add2:(num1: number, num2: number) => number = (num1, num2) => {
return num1 + num2;
};
我们正在输入变量add2
本身。当然。我的 linter 对其中任何一个都缺少返回类型而闭口不谈。
我什至可以两者都做:
export const add3:(num1: number, num2: number) => number = (num1: number, num2: number):number => {
return num1 + num2;
};
我的问题是 - 在这里做方法 1、2 或 3 有什么优点或缺点吗?他们之间有更惯用的风格吗?
解决方案
当您声明新变量并在同一语句中分配它时,无需显式指定类型 - 它将自动假定。因此,对于您问题中的用例,第一个选项将是最佳选择。
如果您需要声明一个变量并稍后为其分配一个值(函数) - 更简洁的方法是使用接口。这些方面的东西:
interface AddFunc {
(num1: number, num2:number): number;
}
let add: AddFunc;
add = (a: number, b: number): number => a + b;
add(1, 2);
推荐阅读
- javascript - 使用书签更改临时变量的值
- python - DataFrame 和 Python 找不到 CSV 文件的列名
- telegram-bot - What are Telegram bot rate limits aggregation period
- python - Detect click on Label - PyQT5
- kotlin - Ktor Android 客户端 Websocket 连接失败
- list - 从类元素创建一个列表
- javascript - 为什么表格没有出现?
- python - Discord bot python:如何获取角色的颜色 Hex 或 RGB 格式
- google-cloud-platform - 使用谷歌云平台日志分析不同条件下的数值
- url - 如何为每个用户自动生成一个页面?⚙