Me gustaría tener una función que emita una variable basada en su variable de tipo "referencia". Supongo que la función tomaría dos parámetros cast(x, ref) , donde x es la variable para convertir de acuerdo con el tipo de datos de ref . Así por ejemplo:
let myVar = cast(3, "helloworld"); console.log(myVar); // "3" let myNewVar = cast(myVar, 32423n); console.log(myNewVar); // 3n En este momento, solo he logrado transformar números en bigints si la ref es un bigint
const cast = (n, ref) => typeof ref === "number" ? n : BigInt(n)Sería bueno convertir una variable al tipo de datos de otra variable.
// Cast will attempt to force cast something (n) into the type of // something else (ref) const cast = (n, ref) => { switch(typeof(ref)) // All major types and how to convert them { case "boolean": return Boolean(n); case "number": return Number(n); case "bigint": return BigInt(n); case "string": return String(n); case "symbol": return Symbol(n); case "undefined": return undefined; default: return n; // If none of the above is the type, we return n } } // Example: 2 is an int, and the reference is a string, so we cast an int // to a string, this could be done with various types more complexly let a = 2 let b = "hello" a = cast(a, b) console.log(a, typeof(a)) // 2, string