打字稿中重载参数的命名约定

时间:2018-07-19 05:58:15

标签: typescript conventions

我需要一个将参数作为字符串或字符串数​​组的函数。

delete(keyOrKeys : string | string[]){
   if(Array.isArray(keyOrKeys){
     // delete all keys in array
   } else {
     // delete single key.
   }
}

因此,我需要遵循良好的命名约定。我应该使用什么名称代替“ keyOrkeys”。还是很好?

2 个答案:

答案 0 :(得分:2)

如果使用真正的重载(而不只是一个实现)为此函数创建定义,则可以为每个重载独立命名参数,例如:

delete(key : string): void; // or whatever you are returning
delete(keys : string[]): void;
// this is useful for calling inside another function with union parameter
delete(keyOrKeys : string | string[]): void;

delete(keyOrKeys : string | string[]){
   if(Array.isArray(keyOrKeys){
     // delete all keys in array
   } else {
     // delete single key.
   }
}

答案 1 :(得分:1)

首先delete是Js中的保留关键字。也许使用deleteKeys