Convertir cadena a booleano en TypeScript

David Mbochi Njonge 8 octubre 2023
  1. Crear un proyecto de mecanografiado
  2. Probar la cadena usando una expresión regular
  3. Utilice el operador de igualdad estricta
  4. Utilice el método parse() de la API JSON
  5. Utilice la instrucción cambiar
  6. Conclusión
Convertir cadena a booleano en TypeScript

La conversión de un tipo de datos a otro es un enfoque de programación común que se usa al crear aplicaciones, ya que ayuda a obtener la salida en un formato diferente dada la misma entrada.

Por ejemplo, cuando se trabaja con datos numéricos, es posible que desee recuperar un parámetro de solicitud de tipo número de una solicitud, y dado que la solicitud es de tipo cadena, podemos usar los métodos parseInt() o parseFloat() para convertir el parámetro de solicitud para escribir Número.

Este enfoque no solo se limita a valores numéricos, sino que también nos brinda otras formas que podemos aprovechar para convertir un tipo de datos en otro tipo de datos. En este tutorial, aprenderemos las diferentes formas que podemos usar para convertir un tipo de datos de cadena en un tipo de datos booleano.

Crear un proyecto de mecanografiado

Abra WebStorm IDEA y seleccione Archivo > Nuevo > Proyecto. En la ventana que se abre, seleccione Node.js en el lado izquierdo, luego en el lado derecho, cambie el nombre del proyecto de sin título a cadena a booleano o ingrese el nombre que prefiera.

Asegúrese de haber instalado node antes de crear este proyecto para asegurarse de que las dos secciones restantes, Node interpreter y Package manager, se agreguen automáticamente desde el sistema de archivos.

Una vez que se haya generado el proyecto, abra una nueva ventana de terminal usando el atajo de teclado Alt+F12 y use el siguiente comando para crear un archivo de configuración llamado tsconfig.json.

~/WebstormProjects/string-to-boolean$ tsc --init

Asegúrese de que el contenido del archivo sea el que se muestra a continuación. El único cambio que hemos realizado es agregar noEmitOnError: true para garantizar que los archivos JavaScript no se creen si se produce un error durante la transpilación del código TypeScript.

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "noEmitOnError": true,
    "strict": true,
    "noFallthroughCasesInSwitch": true,
    "esModuleInterop": true,
    "forceConsistentCasingInFileNames": true
  }
}

Probar la cadena usando una expresión regular

Cree un archivo llamado Main.ts en la carpeta string-to-kotlin y copie y pegue el siguiente código en el archivo.

const trueFlag = "true";
const falseFlag = "false";

function usingTestMethod(){
    const flag = (/true/i).test(trueFlag);
    console.log(flag);
}
usingTestMethod();

En este código, hemos creado dos banderas de cadena y un método llamado usingTestMethod(); las banderas de cadena contienen los valores true y false, respectivamente. Se declaran variables globales ya que se utilizarán en todos los ejemplos de este tutorial.

El usingTestMethod() utiliza el método test() de la interfaz RegExp para crear la expresión regular /true/i que devuelve true si la cadena coincide con la expresión regular.

Tenga en cuenta que si la cadena no coincide con la expresión regular, obtendremos un resultado booleano false. Dado que el indicador de cadena contiene la cadena true, la expresión regular coincidirá y devolverá true.

Ejecute este código usando el siguiente comando.

~/WebstormProjects/string-to-boolean$ tsc && node Main.js

El comando tsc transpila el código TypeScript a código JavaScript y genera un archivo llamado Main.js. El comando nodo ejecuta el archivo Main.js y el valor devuelto por el código se registra en la consola.

true

Utilice el operador de igualdad estricta

Copie y pegue el siguiente código en el archivo Main.ts después de la función usingTestMethod().

function usingStrictEqualityOperator(){
    const flag = (trueFlag === "true");
    console.log(flag);
}
usingStrictEqualityOperator();

En este método, hemos creado un método llamado usingStrictEqualityOperator() que usa el operador de igualdad estricta === para probar si el indicador de cadena que contiene el valor true es estrictamente igual a la cadena que pasamos como argumento.

¿Por qué no usar el operador igual ==? Esto es para evitar la coerción de tipos que podría devolver un resultado diferente al esperado.

Dado que las dos cadenas son iguales, el operador de igualdad estricta devolverá el valor de true. Ejecute este código usando el comando que usamos en el ejemplo anterior y asegúrese de que el resultado sea como se muestra a continuación.

true

Utilice el método parse() de la API JSON

Copie y pegue el siguiente código en el archivo Main.ts después del método usingStrictEqualityOperator().

function usingJSONParser(){
    const flag = JSON.parse(falseFlag);
    console.log(flag);
}
usingJSONParser();

En este código, hemos creado un método denominado usingJSONParser() que utiliza el método parse() de la interfaz JSON para analizar el texto proporcionado como argumento a un valor booleano.

En nuestro caso, hemos pasado la variable falseFlag que contiene una bandera de cadena con el valor "true", y el método parse devuelve un valor booleano de true de esta cadena.

Tenga en cuenta que, según el requisito, podemos devolver un Objeto, Array, cadena o número.

Ejecute este código usando el comando que usamos en el ejemplo anterior y asegúrese de que el resultado sea como se muestra a continuación.

false

Utilice la instrucción cambiar

Copie y pegue el siguiente código en el archivo Main.ts después del método usingJSONParser().

function flagResult(flag: any){
    switch (flag){
        case true:
        case "true":
        case 1:
        case "1":
        case "on":
        case "yes":
            return true;
        default:
            return false;
    }
}

function usingSwitchStatement(){
    const flag = flagResult(trueFlag);
    console.log(flag);
}
usingSwitchStatement();

En este código, hemos creado dos métodos llamados flagResult() y usingSwitchStatement(). El método flagResult() acepta un parámetro de tipo any; dependiendo del argumento pasado al método, se devuelve un valor booleano de “true” o “false”.

El método devuelve un valor de true para cualquiera de los argumentos true, "true", 1, on, o ; de lo contrario, se devuelve un valor de false.

El usingSwitchStatement() utiliza este método para obtener el valor booleano del indicador de cadena trueFlag, que se declaró al comienzo de este tutorial. La variable flag contiene el resultado de pasar trueFlag al método flagResult().

Ejecute este código usando el comando que usamos en el ejemplo anterior y asegúrese de que el resultado sea como se muestra a continuación.

true

Conclusión

Este tutorial nos enseñó cómo convertir un valor de cadena en un valor booleano. Los temas que hemos cubierto incluyen probar una cadena usando una expresión regular, usando el operador de igualdad estricta, usando el método parse() de la API JSON y, finalmente, aprendimos cómo usar la instrucción switch.

Tenga en cuenta que las bibliotecas pueden ayudarnos a lograr el mismo objetivo, y un desarrollador debe estar abierto a usar cualquier otro enfoque que no hayamos cubierto en este tutorial.

David Mbochi Njonge avatar David Mbochi Njonge avatar

David is a back end developer with a major in computer science. He loves to solve problems using technology, learning new things, and making new friends. David is currently a technical writer who enjoys making hard concepts easier for other developers to understand and his work has been published on multiple sites.

LinkedIn GitHub

Artículo relacionado - TypeScript Boolean

Artículo relacionado - TypeScript String