nos si ponerlo aqui o en warzone perdonar
hoy mismo acabo de resolver la prueba del "serial" y la verdad esque lo hice mas o menos a suerte jaja
llevo horas y horas comparando el codigo y la solucion par entender del todo el codigo y hay una parte que no se si es por el cansancio o por que no me entra que no entiendo
he de avisar con es la primera vez que miro un codigo JS , lo que pasa esque la sintaxis es parecida a otros lenguajes y voy entendiendo poco a poco
me dejo de rollos, queria preguntaros si me podeis explicar por encima la funcion de esta parte del codigo, como os he dicho he completado la prueba por suerte y un minimo (o incluso menos) por leer y entender el codigo
aqui va la parte que no me entra
Código:
for (i = 0; i < sText.length && IsNumber == true; i++)
{
Char = sText.charAt(i);
if (ValidChars.indexOf(Char) == -1)
{
IsNumber = false;
}
}
return IsNumber;
}
EDITO: a parttir de IsNumber= false tambien lo entiendo
os pongo el codigo completo para guiaros
Código:
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;
}