swtich/if...else的替代语句
更新时间:2015年08月16日 10:24:52 投稿:hebedich
这篇文章主要介绍了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'
以上就是本文的全部内容了,希望大家能够喜欢。
相关文章
理解Javascript_07_理解instanceof实现原理
在《Javascript类型检测》一文中讲到了用instanceof来用做检测类型,让我们来回顾一下2010-10-10
file-loader打包图片文件时路径错误输出为[object-module]的解决方法
这篇文章主要介绍了file-loader打包图片文件时路径错误输出为[object-module]的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-01-01


最新评论