Volná povaha JavaScriptu umožňuje vývojářům používat úžasné triky, aby mohli dělat cokoliv, co chcete. Podrobně jsem popsal, jak můžete filtrovat falešné hodnoty v polích pomocí filter(Boolean)
trik, ale čtenář David Hibshman se podělil o další trik pro přetypování hodnot pole stejným způsobem.
Chcete-li přetypovat pole prvků, můžete použít map
a požadovaný typ návratu:
["1", "9", "-9", "0.003", "yes"].map(Number); // [1, 9, -9, 0.003, NaN]
Miluji tento trik, ale můžete namítnout, že samotný kód by mohl být považován za matoucí, takže by bylo užitečné zabalit jej do pomocné funkce:
function arrToNumber(arr) { return arr.map(Number).filter(Boolean); }
Ověřování by mohlo a mělo by být pravděpodobně přísnější, ale základní ověření prostřednictvím typového odlitku vám může pomoci!