La razón por la que se puede usar este estilo (y posiblemente la razón por la que se usó aquí) es que _
es un carácter más corto que ()
.
Los paréntesis opcionales caen en el mismo problema de estilo que los corchetes opcionales . Esto es una cuestión de gusto y estilo de código en su mayor parte, pero aquí se favorece la verbosidad debido a la coherencia.
Si bien las funciones de flecha permiten un solo parámetro sin paréntesis, es inconsistente con cero, solo desestructurado, solo descanso y múltiples parámetros:
let zeroParamFn = () => { ... };
let oneParamFn = param1 => { ... };
let oneParamDestructuredArrFn = ([param1]) => { ... };
let oneParamDestructuredObjFn = ({ param1 }) => { ... };
let twoParamsFn = (param1, param2) => { ... };
let restParamsFn = (...params) => { ... };
Aunque se corrigió elis declared but never used
error en TypeScript 2.0 para los parámetros subrayados, _
también puede activar una unused variable/parameter
advertencia de un linter o IDE. Este es un argumento considerable en contra de hacer esto.
_
se puede usar convencionalmente para parámetros ignorados (como la otra respuesta ya se explicó). Si bien esto puede considerarse aceptable, este hábito puede resultar en un conflicto con el _
espacio de nombres de subrayado / Lodash, también parece confuso cuando hay varios parámetros ignorados. Por esta razón, es beneficioso tener los parámetros subrayados correctamente nombrados (admitidos en TS 2.0), también ahorra tiempo en descubrir la firma de la función y por qué los parámetros se marcan como ignorados (esto desafía el propósito del _
parámetro como un atajo):
let fn = (param1, _unusedParam2, param3) => { ... };
Por las razones enumeradas anteriormente, personalmente consideraría el _ => { ... }
estilo del código como un mal tono que debería evitarse.