hola queria mostrarles mi codigo para que ustedes me den su opinion de cuan seguro es o si falta algo etc...
espero me ayuden ^^
function ver (cod) {

if (cod.length != 16){
alert("Codigo No Valido");
return false;
}

var codx =new Array(cod);
var chk = '';
var tmp;
var cvs;
var cvd;

cvd = cod.substr(15,1);
cod = cod.substr(0,15);

if (cod.length != 15 || IsNumeric(cod) == false){
alert("Codigo No Valido");
return false;
}

for (i=0;i<cod.length;i++){
if (i%2 == 0){
tmp = cod.substring(i,i+1) * 1;

}
else{
tmp = cod.substring(i,i+1) * 2;
}

if (tmp >= 10){
tmp = tmp.toString();
tmp = tmp.substr(0,1) + tmp.substr(1,1);
}

chk = chk.concat(tmp);
}

tmp = '';


for (i=0;i<chk.length;i++){
tmp = (tmp*1) + (chk.charAt(i)*1);
}


tmp = tmp.toString();
chk = (tmp.substr(0,1)*1) + (tmp.substr(1,1)*1);
chk = chk * 10;
chk = (chk*1) - (tmp*1);
cvs = chk % 10;

if (cvs == cvd){

return true;
}
else{
alert("Codigo No Valido");
return false;
}
}


function IsNumeric(sText)

{
var ValidChars = "0123456789.";
var IsNumber=true;
var Char;


for (i = 0; i < sText.length && IsNumber == true; i++)
{
Char = sText.charAt(i);
if (ValidChars.indexOf(Char) == -1)
{
IsNumber = false;
}
}
return IsNumber;

}