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

JavaScript中switch判斷容易犯錯(cuò)的一個(gè)細(xì)節(jié)

 更新時(shí)間:2014年08月27日 10:20:16   投稿:junjie  
這篇文章主要介紹了JavaScript中switch判斷容易犯錯(cuò)的一個(gè)細(xì)節(jié),簡(jiǎn)單說(shuō)就是字符串和數(shù)字的差別,看完本文會(huì)有一個(gè)清晰的認(rèn)知,需要的朋友可以參考下

switch語(yǔ)句與if語(yǔ)句的關(guān)系最為密切,也是其它編程語(yǔ)言中普遍使用的一種流程控制語(yǔ)句,但switch的匹配是全等模式,如果不注意這個(gè)細(xì)節(jié)則寫(xiě)程序時(shí)往往會(huì)出錯(cuò)。

代碼:

var n = '5';
switch(n){
    case 5:
        alert('執(zhí)行case分支');
        break;
    default:
        alert('執(zhí)行default分支');
}

結(jié)果:

JS中的switch

可能很多人會(huì)誤以為以上程序會(huì)走case分支,結(jié)果卻走了default分支。難道它們兩個(gè)不相等嗎?我們使用if語(yǔ)句看看。

代碼:

var n = '5';
if(n==5){
    alert('真 分支');
}else{
    alert('假 分支');
}

結(jié)果:

JS中的switch

在if語(yǔ)句里可以匹配,但為何在switch語(yǔ)句里不能匹配呢?

這是因?yàn)樵趕witch語(yǔ)句里的case使用全等模式,也就相當(dāng)于if里的使用三個(gè)等號(hào)類似。我們把case的代碼改寫(xiě)一下

代碼:

var n = '5';
switch(n){
    case '5': // 把原來(lái)的 case 5 改寫(xiě)成 case '5'
        alert('執(zhí)行case分支');
        break;
    default:
        alert('執(zhí)行default分支');
}

結(jié)果:

JS中switch

改寫(xiě)了以后就能走case分支了,就像我們if里使用三個(gè)全等號(hào)一樣

代碼:

var n = '5';
if(n===5){
    alert('真 分支');
}else{
    alert('假 分支');
}

結(jié)果:

JS中的switch

因?yàn)槭褂萌?,所以字符?不等于數(shù)字5,結(jié)果走了假分支。

由以上例子說(shuō)明在 switch中使用的是全等匹配模式,特別是數(shù)字與字符串匹配的時(shí)候需要注意的一個(gè)問(wèn)題

相關(guān)文章

最新評(píng)論

柯坪县| 阳朔县| 南昌市| 奉化市| 宁化县| 弋阳县| 建始县| 佛冈县| 新津县| 全州县| 舟山市| 临夏市| 綦江县| 兴安县| 同江市| 安顺市| 九江县| 静安区| 甘肃省| 渭源县| 通化县| 固安县| 灵山县| 台东县| 井陉县| 阳江市| 伊宁县| 绥棱县| 贡嘎县| 阿克| 赣州市| 巫山县| 谷城县| 钟山县| 苏州市| 普格县| 若羌县| 淮安市| 邵阳县| 上蔡县| 霞浦县|