JavaScript 有效的Nif,Cif,Dni
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript 有效的Nif,Cif,Dni相关的知识,希望对你有一定的参考价值。
/*******************************
Validación del nif. Por Carlitos. carlosbernad@teleline.es
Si usas este script, deja intactas estas lÃneas (créditos). Vale?
También te agradecerÃa un e-mail con tus comentarios.
*******************************/
function isValidCif(abc){
par = 0;
non = 0;
letras = "ABCDEFGHKLMNPQS";
let = abc.charAt(0);
if (abc.length!=9) {
//alert('El Cif debe tener 9 dÃgitos');
return false;
}
if (letras.indexOf(let.toUpperCase())==-1) {
//alert("El comienzo del Cif no es válido");
return false;
}
for (zz=2;zz<8;zz+=2) {
par = par+parseInt(abc.charAt(zz));
}
for (zz=1;zz<9;zz+=2) {
nn = 2*parseInt(abc.charAt(zz));
if (nn > 9) nn = 1+(nn-10);
non = non+nn;
}
parcial = par + non;
control = (10 - ( parcial % 10));
if (control==10) control=0;
if (control!=abc.charAt(8)) {
//alert("El Cif no es válido");
return false;
}
//alert("El Cif es válido");
return true;
}
function isValidNif(abc){
dni=abc.substring(0,abc.length-1);
let=abc.charAt(abc.length-1);
if (!isNaN(let)) {
//alert('Falta la letra');
return false;
}else{
cadena = "TRWAGMYFPDXBNJZSQVHLCKET";
posicion = dni % 23;
letra = cadena.substring(posicion,posicion+1);
if (letra!=let.toUpperCase()){
//alert("Nif no válido");
return false;
}
}
//alert("Nif válido")
return true;
}
function isValidEmail(str){
var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
return (filter.test(str));
}
function isValidTelef(num){
if(num.length < 9){
return false;
}else if(isNaN( num )){
return false;
}else{
return true;
}
}
function isValidDateFormat(str){
var filter=/^(\d{1,2}\/\d{1,2}\/\d{2})$/i;
return (filter.test(str));
}
以上是关于JavaScript 有效的Nif,Cif,Dni的主要内容,如果未能解决你的问题,请参考以下文章
python Validar DNI,NIF,NIE
国际货币基金组织
javascript 智利DNI验证器并获取JSON {run:Number / String,adv:Number / String,dv:Number / String,valid:Boolean
在 Erlang VM 和 NIF 之间传递 BIGINT
Erlang NIF 奇怪的 iolist 行为
Erlang NIF 测试——OS X Lion