最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何將一個String和多個String值進行比較思路分析

 更新時間:2013年04月22日 10:24:28   作者:  
開發(fā)中我們經(jīng)常需要將一個String和多個String值進行比較。直覺反應(yīng)是使用||符號連接多個===完成,感興趣的朋友可以了解下哈
開發(fā)中我們經(jīng)常需要將一個String和多個String值進行比較。直覺反應(yīng)是使用||符號連接多個===完成,比如:
復制代碼 代碼如下:

if (string === 'banana' || string === 'pineapple') {
fruitColor = 'yellow';
}

這樣能夠很好的完成需求,但總覺得有點笨,并且對擴展不友好,當我們的水果種類變多時:
復制代碼 代碼如下:

if (string === 'banana' || string === 'pineapple' || string === 'mongo' || string === 'lemon') {
fruitColor = 'yellow';
}

上面的代碼看起來就不那么好看了,讓我們看看有什么其他方式能夠處理這種需求。
Switch
復制代碼 代碼如下:

switch(string) {
case 'banana':
case 'pineapple':
case 'mongo':
case 'lemon':
fruitColor = 'yellow';
}

這看起來不錯,但是總是要多打些字,對于不喜歡多打字的人來說不是個好方法。
Array
復制代碼 代碼如下:

if (['banana', 'pineapple', 'mongo', 'lemon'].indexOf(string) >= 0) {
fruitColor = 'yellow';
}

這下好多了,但還有個問題,IE9以下的IE瀏覽器并不支持indexOf方法,如果你要在IE<=8的環(huán)境中使用Array方式比較多個string值,要么自己寫一個indexOf方法,要么就得引入一些庫來做瀏覽器兼容。
jQuery
jQuery提供了一個inArray方法
復制代碼 代碼如下:

if ($.inArray(['banana', 'pineapple', 'mongo', 'lemon'], string) >= 0) {
fruitColor = 'yellow';
}

Underscore
Underscore提供了一個contains方法
復制代碼 代碼如下:

if (_.contains(['banana', 'pineapple', 'mongo', 'lemon'], string)) {
fruitColor = 'yellow';
}

正則表達式
當然,我們還有終極武器——正則表達式
復制代碼 代碼如下:

if (/^(banana|pineapple|mongo|lemon)$/.test(string)) {
fruitColor = 'yellow';
}
您可能感興趣的文章:

相關(guān)文章

最新評論

林芝县| 富源县| 呼伦贝尔市| 山丹县| 乌海市| 武山县| 黔江区| 客服| 正宁县| 兰考县| 耿马| 海伦市| 靖边县| 宝山区| 诏安县| 得荣县| 盖州市| 湖北省| 长寿区| 綦江县| 郴州市| 西安市| 蓬安县| 涟源市| 高密市| 舒城县| 青浦区| 南宫市| 策勒县| 班戈县| 恩施市| 九龙坡区| 四会市| 阿城市| 西和县| 罗山县| 广平县| 揭阳市| 北京市| 莱芜市| 万山特区|