Welcome 微信登录

首页 / 脚本样式 / JavaScript / swtich/if...else的替代语句

很多时候,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" }
确实通俗易懂,且写起来好方便,一路都是else if,太多选项分支,就有人用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"}
 但是,还是可以借鉴使用Object的hash思想:
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"
以上就是本文的全部内容了,希望大家能够喜欢。