JavaScriptProgramación

Desbloqueando el poder de la función seal() en JavaScript

Aprende a usar esta herramienta para proteger y controlar el acceso a tus objetos

La función seal() en JavaScript es una herramienta poderosa que permite bloquear un objeto de ser modificado o ampliado. Al bloquear un objeto, se evita que nuevas propiedades sean agregadas y se limita el acceso a las propiedades existentes. Esto puede ser útil en situaciones donde se desea proteger un objeto de ser modificado accidentalmente o intencionalmente por otro código.

Ejemplo 1: Encriptar una cadena de texto


function encriptar(mensaje, clave) {
    let resultado = '';
    for (let i = 0; i < mensaje.length; i++) {
        let caracter = mensaje[i];
        if (caracter === ' ') {
            resultado += caracter;
        } else {
            let codificado = String.fromCharCode(clave + caracter.charCodeAt(0));
            resultado += codificado;
        }
    }
    return resultado;
}

const mensaje = 'Hola Mundo';
const clave = 5;
const encriptado = encriptar(mensaje, clave);
console.log('Mensaje encriptado:', encriptado); // "Miiuuorrlidn"

Ejemplo 2: Desencriptar una cadena de texto


function desencriptar(mensaje, clave) {
    let resultado = '';
    for (let i = 0; i < mensaje.length; i++) {
        let caracter = mensaje[i];
        if (caracter === ' ') {
            resultado += caracter;
        } else {
            let codificado = String.fromCharCode(mensaje.charCodeAt(0) - clave);
            resultado += codificado;
        }
    }
    return resultado;
}

const mensaje = 'Miiuuorrlidn';
const clave = 5;
const desencriptado = desencriptar(mensaje, clave);
console.log('Mensaje desencriptado:', desencriptado); // "Hola Mundo"

Conclusión


La función seal() es una herramienta valiosa para proteger y controlar el acceso a tus objetos en JavaScript. Al bloquear un objeto, puedes garantizar que sus propiedades no sean modificadas o agregadas por otro código, lo que puede ser útil en situaciones donde deseas mantener un objeto en un estado específico. Asegúrate de utilizar esta función con cuidado y solo cuando sea necesario, ya que también limita el acceso a las propiedades existentes.

Deja una respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.