많은 경우 if...else...에 판단 분기 옵션이 많으면 다음과 같은 내용이 표시됩니다.
if (animal === 'dog') { // TO DO 'dog' } else if (animal === 'cat') { // TO DO 'cat' } else if (animal === 'bird') { // TO DO 'bird' } else if (animal === 'fish') { // TO DO 'fish' } else { // TO DO 'other' }
정말 이해하기 쉽고 쓰기도 쉽습니다. 옵션 브랜치가 너무 많아서 누군가가 swtich를 사용하여 이렇게 썼습니다.
swtich (animal) { case 'dog': // TO DO 'dog' break; case 'cat': // TO DO 'cat' break; case 'bird': // TO DO 'bird' break; case 'fish': // TO DO 'fish' break; default: // TO DO 'other' }
그러나 객체 사용의 해시 아이디어에서 여전히 배울 수 있습니다.
function getAnimalName(name) { var animals = { 'dog': function () { return 'dog'; }, 'cat': function() { return 'cat'; }, 'bird': function() { return 'bird'; }, 'fish': function() { return 'fish'; }, 'default': function() { return 'other'; } }; return (animals.name || animals.default)(); } var animal = getAnimalName('dog'); console.log(animal);// 'dog'
위 내용은 이 글의 전체 내용입니다. 모두 마음에 드셨으면 좋겠습니다.