Reemplazar Switch for Objetos literales en JavaScript
Object Literals
en lugar de sentencias switch
o 포함 if
.Las sentencias switch, son de las primeras cosas que arendemos cuando entramos al mundo de la programación, y no, no están obsoletas. 많은 프로그램이 JavaScript를 계속 사용하고 있기 때문에 사용 중인 스위치를 사용할 수 없습니다.
¿Qué es una sentencia 스위치?
Nos permite evaluar una expresión, haciendo coincidir el valor de la expresión con una clausula de caso y ejecuta las declaraciones asociadas con ese caso, veamos un ejemplo:
function obtenerPrecio(producto) {
switch (producto) {
case "Naranjas":
return 2;
case "Mangos":
return 2.5;
case "Papayas":
return 3;
default:
return 0
}
}
obtenerPrecio("Papayas"); // Salida: 3
Podemos observar que essimilar a sentencias de tipo if-else, con la diferencia que evalúa un único valor.
¿Qué pasa si olvido un break o return?
El inconveniente más común que nos encontramos, es la forma en la que maneja el flujo de control, por ejemplo si nos olvidamos de colocar el 'break' seguirá ejecutando las lineas siguientes de código aún estrabanó en ende, estamos obligados añadir estas pausas. En el siguiente ejemplo, si
expresión
se resuelve a "Platanos", el algoritmo compara el valor con el case "Platanos"y ejecuta la declaración asociada. Cuando se encuentra un break
, el programa sale del condicional switch
y ejecuta la declaración que lo procede. Si se omite el break
, 엘 케이스 "Cerezas"también es ejecutado. Este codigo lo pueden encontrar acá .switch (expr) {
case 'Naranjas':
console.log('El kilogramo de naranjas cuesta $0.59.');
break;
case 'Manzanas':
console.log('El kilogramo de manzanas cuesta $0.32.');
break;
case 'Platanos':
console.log('El kilogramo de platanos cuesta $0.48.');
break;
case 'Cerezas':
console.log('El kilogramo de cerezas cuesta $3.00.');
break;
case 'Mangos':
case 'Papayas':
console.log('El kilogramo de mangos y papayas cuesta $2.79.');
break;
default:
console.log('Lo lamentamos, por el momento no disponemos de ' + expr + '.');
}
console.log("¿Hay algo más que te quisiera consultar?");
¿Por qué reemplazarlo por objetos literales?
Como hemos dicho, en JavaScript estamos acostumbrados a utilizar objetos para casi todo, ya sea como constructores o como objetos literales. 새로운 데이터 기반, 정보 변수에 대한 정보 사용 목적 리터럴 드 로스 cuales extraemos valores de sus propiedades.
const productos = {
"naranjas": 2,
"mangos": 2.5,
"papayas": 3,
"default": 0
}
function obtenerPrecio(producto) {
return productos[producto.toLowerCase()] || productos['default'];
}
obtenerPrecio("Papayas"); // Salida: 3
Hemos logrado ahorrarnos algunas líneas de codigo, pero principalmente hemos conseguido mayor legibilidad y no tenemos que preocuparnos por escribir pausas en el codigo.
Reference
이 문제에 관하여(Reemplazar Switch for Objetos literales en JavaScript), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jfernandogt/reemplazar-switch-por-objetos-literales-en-javascript-4hfk텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)