Cómo simplificar el código cuando se usan operadores múltiples o. Tengo una lista de números del 0 al 6 separados por lógica o. ¿Hay alguna forma de simplificarlo?
if (filteredMnth === 'mnth') { return (new Date(exp?.date).getMonth().toString() === "0" || "1" || "2" || "3" || "4" || "5" || "6" ) }Para este caso específico puedes hacer ->
if (filteredMnth === 'mnth') { return new Date(exp?.date).getMonth() <= 6; }Un buen patrón para esto es crear una matriz de valores valid o accepted y usar Array.prototype.includes para buscar uno a partir de la entrada del usuario:
const validValues = [ 0, 1, 2 ]; const input = 2; validValues.includes(input); // => true const input2 = 3; validValues.includes(input2); //=> falseComo @Robby Cornelissen ya mencionó en el comentario, en su caso realmente no tiene ningún sentido, pero incluyo este patrón aquí para responder una versión más genérica de su pregunta.
Dado que tiene varios valores, puede utilizar el método Lista e incluye como se muestra a continuación
const validMonths = ["1", "2", ...] const monthToCheck = new Date(exp?.date).getMonth().toString() if(validMonths.includes(monthToCheck)){ //Evaluates true if value exist }