短小精悍,js银行卡校验(luhn算法)

网上搜索的看着都蛋疼。实现的太复杂,故精简如下:

请自测。

function checkBankCard(cardNo){
        var tmp=true,total=0;
        for(var i=cardNo.length;i>0;i--){
            var num=cardNo.substring(i,i-1);
            if(tmp=!tmp,tmp)num=num*2;
            var gw=num%10;
            total+=(gw+(num-gw)/10);
        }
        return total%10==0;
}

你可能感兴趣的:(Luhn算法,银行卡校验)