Protocolo 02: La caja de memoria
Fácil
variables
objects
closures
📖Historia
🧠 Transmisión de Zeew_02 iniciada…
El Almacén Central de Zeew está corrupto. Los valores se mezclan entre sí, las constantes cambian y las variables pierden su propósito. El flujo de datos está al borde del colapso.
"La memoria no miente, pero puede olvidar su forma."
Debes crear una función que almacene y proteja valores correctamente, distinguiendo entre lo que puede cambiar y lo que debe permanecer inmutable.
🎯Enunciado
🎯 Objetivo
Crea una función memoryBox(value, type) que almacene un valor según su tipo ('variable' o 'constant') y retorne un objeto con métodos para leer y (solo si es variable) modificar el valor.
📋 Especificaciones
- Si
typees'constant', el valor NO puede cambiar - Si
typees'variable', el valor SÍ puede cambiar - Retorna un objeto con:
read(): retorna el valor actualwrite(newValue): actualiza el valor (solo para variables)
- Si intentas escribir en una constante, retorna
"Error: constante protegida"
💡 Ejemplos
const box1 = memoryBox(42, 'constant');
box1.read(); // 42
box1.write(100); // "Error: constante protegida"
const box2 = memoryBox(10, 'variable');
box2.read(); // 10
box2.write(20); // 20
box2.read(); // 20
✅Casos de prueba
Tu solución será validada contra 5 casos de prueba
Test 1: Lee valor inicial de constante
Test 2: Protege constantes contra escritura
Test 3: Permite modificar variables
... y 2 casos más
💻 Editor de código
JavaScript
Cargando editor...
Loading...