Lista de funciones en JavaScript y como utilizarlas


A continuación les presentare una serie de funciones realizadas en JavaScript, las que podrán ser utilizadas en cualquier desarrollo.

Si han leído el articulo "Validación de formularios con JavaScript" podrán utilizar estas funciones en conjunto a las validaciones para mejorar los resultados obtenidos en la adquisición de datos en nuestro sitio web.





Función: ltrim, rtrim, trim
Descripción:
- ltrim: Elimina los espacios en blanco iniciales, a la izquierda de una cadena de texto.
- rtirm: Elimina los espacios en blanco finales, a la derecha de una cadena de texto.
- trim: Elimina los espacios en blanco iniciales y finales de una cadena de texto.
Parámetros: str ( Es una cadena de texto a la que queremos quitarle los espacios iniciales)
Retorno: Una cadena de texto sin los espacios en blanco iniciales.
Código:
function ltrim(str) {
 for(var k = 0; k < str.length && isWhitespace(str.charAt(k)); k++);
 return str.substring(k, str.length);
}
function rtrim(str) {
 for(var j=str.length-1; j>=0 && isWhitespace(str.charAt(j)) ; j--) ;
 return str.substring(0,j+1);
}
function trim(str) {
 return ltrim(rtrim(str));
}
function isWhitespace(charToCheck) {
 var whitespaceChars = " \t\n\r\f";
 return (whitespaceChars.indexOf(charToCheck) != -1);
}

Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="      6 iniciales y 6 finales      " />
<input name="boton" type="button" value="ltrim" onclick="javascprit:alert('---' + ltrim(document.datos.texto.value) + '---');" />
<input name="boton" type="button" value="rtrim" onclick="javascprit:alert('---' + rtrim(document.datos.texto.value) + '---');" />
<input name="boton" type="button" value="trim" onclick="javascprit:alert('---' + trim(document.datos.texto.value) + '---');" />
<form name="datos">
</form>

---

Función: esVacia
Descripción: Comprueba si una cadena de texto esta vacía.
Parámetros: str ( Es la cadena de texto que queremos comprobar.)
Retorno: Un valor Boolean (Verdadero o Falso), dependiendo si la cadena esta vacía o no.
Código:
function esVacia(str) {
// Hace uso de la funcion TRIM para eliminar espacios en blanco
return (( str == null ) || ( str.length == 0 ) || ( trim( str ).length == 0 ));
}

Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" />

<input name="boton" type="button" value="esVacia" onclick="javascprit:alert(esVacia(document.datos.texto.value));" />

<form name="datos">
</form>

---
Función: esCarEsp
Descripción: Comprueba si un carácter es español, tildes, eñes, etc.
Parámetros: car ( Es el carácter a comprobar..)
Retorno: Un valor Boolean (Verdadero o Falso), dependiendo si el carácter es de la lengua española o no.
Código:
function esCarEsp ( car )
{
 var letras = 'áéíóúÁÉÍÓÚüÜñÑçÇ';
 return ( letras.indexOf( car ) >= 0 );
}
Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="ñ" />
<input name="boton" type="button" value="esCarEsp" onclick="javascprit:alert(esCarEsp(document.datos.texto.value));" />
<form name="datos">
</form>
---
Función: esLetra
Descripción: Comprueba si un carácter es una letra.
Parámetros: car ( Es el carácter a comprobar..)
Retorno: Un valor Boolean (Verdadero o Falso), dependiendo si es una letra o no.
Código:
function esLetra ( car )
{ // Usa la funcion esCarEsp.
 return( (( car >= 'a' && car <= 'z')) || (( car >= 'A' && car <= 'Z')) || esCarEsp( car ) )
}
Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="ñ" />
<input name="boton" type="button" value="esLetra" onclick="javascprit:alert(esLetra(document.datos.texto.value));" />
<form name="datos">
</form>
---
Función: esNro
Descripción: Comprueba si una cadena contiene solo números.
Parámetros: str ( Es la cadena a comprobar.  Acepta decimales.)
Retorno: Si es un valor numérico retorna el mismo valor, de lo contrario, retorna null.
Código:
function esNro ( str )
{
 return (str.value.match(/^[0-9,.]+$/))
}
Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="5" />
<input name="boton" type="button" value="esNro" onclick="javascprit:alert(esNro(document.datos.texto));" />
<form name="datos">
</form>
---
Función: esABC
Descripción: Comprueba si una cadena contiene solo caracteres alfabéticos.
Parámetros: str ( Es la cadena a comprobar. )
Retorno: Si es una cadena que contiene solo texto retorna el mismo valor, de lo contrario, retorna null.
Código:
function esABC ( str )
{
 return (str.value.match(/^[a-z,A-Z,ñÑáéíóúÁÉÍÓÚçÇ ]+$/))
}
Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="feliz año" />
<input name="boton" type="button" value="esABC" onclick="javascprit:alert(esABC(document.datos.texto));" />
<form name="datos">
</form>
---
Función: esAlfanum
Descripción: Comprueba si una cadena contiene solo caracteres alfanuméricos.
Parámetros: str ( Es la cadena a comprobar. )
Retorno: Si es una cadena que contiene valores alfanuméricos retorna el mismo valor, de lo contrario, retorna null.
Código:
function esAlfanum ( str )
{
 return (str.value.match(/^[a-z,A-Z,ñÑáéíóúÁÉÍÓÚçÇ,0-9 ]+$/))
}
Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="18 de enero del 1973" />
<input name="boton" type="button" value="esAlfanum" onclick="javascprit:alert(esAlfanum(document.datos.texto));" />
<form name="datos">
</form>
---

Función: esFecha
Descripción: Comprueba si la fecha ingresada es correcta (dd/mm/yy).
Parámetros: str ( Es la cadena a comprobar. )
Retorno: Retorna true si es una fecha valida o false si no lo es.
Código:
function esFecha (str)
{
var fecha = str.value; // tomo el valor introducido del campo
var array_fecha = fecha.split('/');
if ( !array_fecha[2] )
 array_fecha = fecha.split('-');
if ( !array_fecha[2] )
 array_fecha = fecha.split('.');
if ( !array_fecha[2] )
 return false; // Retorna falso si no se ingresa la fecha con alguno de estos separadores / - .
// Verifica que sea una fecha valida
var diasEnMes = new Array( 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
if( array_fecha[1] <1 || array_fecha[1] > 12 )
 return false; // Retrona falso si el mes es menor a 1 o mayor a 12
if( array_fecha[0] <1 || array_fecha[0] > 31)
 return false; // Retorna falso si el dia es menor a 1 o mayor a 31
var intAA = parseInt(array_fecha[2],10); // AA = Año
var intMM = parseInt(array_fecha[1]-1,10); // MM = Mes
var intDD = parseInt(array_fecha[0],10); // DD = Día
if(intDD > diasEnMes[intMM]) return false; // Retorna falso si el dia difiere del apropiado para el mes.
return true; // Retorna Verdadero si la fecha es correcta.
}
Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="18/1/1973" />
<input name="boton" type="button" value="esFecha" onclick="javascprit:alert(esFecha(document.datos.texto));" />
<form name="datos">
</form>
---
Función: mesApalabra
Descripción: Retorna el mes en palabra 1=enero, 2=febrero, etc. (dd/mm/yy).
Parámetros:
str ( Es la cadena a convertir. )
formato Es el formato a devolver.
      c = corto (ene, feb, mar, etc.)
      l = largo (enero, febrero, marzo, etc. )
Retorno: Retorna el mes escrito (ene, enero, etc.) o false si es incorrecto.
Código:  Usa la función esFecha
function mesApalabra (str, formato)
{
 // El formato son dos opciones:
 //  'c' = Corto: ene
 //  'l' = Largo: enero
 //
 if(!esFecha(str)) // Usa esFecha para verificar que sea una fecha valida
  return false;


 var mesCorto = new Array("ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "set", "oct", "nov", "dic")
 var mesLargo = new Array("enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "setiembre", "octube", "noviembre", "diciembre")
 var fechaConFormato = "";
 var fecha = str.value; // tomo el valor introducido del campo
 var array_fecha = fecha.split('/');
 if ( !array_fecha[2] )
  array_fecha = fecha.split('-');
 if ( !array_fecha[2] )
  array_fecha = fecha.split('.');

 var intMM = parseInt(array_fecha[1]-1,10); // MM = Mes
 if (formato == 'c' || formato == 'C')
  return mesCorto[intMM];
 if (formato == 'l' || formato == 'L')
  return mesLargo[intMM];
}
Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="18/1/1973" />
<input name="formato" type="text" width="200" value="c" />
<input name="boton" type="button" value="mesApalabra" onclick="javascprit:alert(mesApalabra(document.datos.texto,document.datos.formato.value));" />
<form name="datos">
</form>
---
Función: esMail
Descripción: Verifica si una direccion de eMail esta correctamente ingresada.
Parámetros: str ( Es la cadena a verificar. )
Retorno: Retorna true si es correcta o false si no lo es.
Código:
function esMail(str)
{
//    var str=document.validacion.email.value
    var filtro=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
    if (filtro.test(str))
        return true;
    else{
  return false;
    }
    return (resultado)
}
Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="minombre@servidor.com" />
<input name="boton" type="button" value="esMail" onclick="javascprit:alert(esMail(document.datos.texto.value));" />
<form name="datos">
</form>
---
Función: esCUIT
Descripción: Verifica si se ha ingresado un nro de CUIT/CUIL valido.
Parámetros: cuit ( Es la cadena a verificar. )
Retorno: Retorna true si es correcta o false si no lo es.
Código: El valor se puede agregar con o sin formato 20231131656 o 20-23113165-6 o cualquier otro.
function esCUIT(cuit) {
    var vec = new Array(10);
    cuit_rearmado="";
    for (i=0; i < cuit.length; i++) {  
        caracter=cuit.charAt( i);
        if ( caracter.charCodeAt(0) >= 48 && caracter.charCodeAt(0) <= 57 )     {
            cuit_rearmado +=caracter;
        }
    }
    cuit=cuit_rearmado;
    if ( cuit.length != 11) {  // si to estan todos los digitos
        return false;
    } else {
        x=i=dv=0;
        // Multiplico los dígitos.
        vec[0] = cuit.charAt(  0) * 5;
        vec[1] = cuit.charAt(  1) * 4;
        vec[2] = cuit.charAt(  2) * 3;
        vec[3] = cuit.charAt(  3) * 2;
        vec[4] = cuit.charAt(  4) * 7;
        vec[5] = cuit.charAt(  5) * 6;
        vec[6] = cuit.charAt(  6) * 5;
        vec[7] = cuit.charAt(  7) * 4;
        vec[8] = cuit.charAt(  8) * 3;
        vec[9] = cuit.charAt(  9) * 2;
                   
        // Suma cada uno de los resultado.
        for( i = 0;i<=9; i++) {
            x += vec[i];
        }
        dv = (11 - (x % 11)) % 11;
        if ( dv == cuit.charAt( 10) ) {
            return true;
        }
    }

 return false;
}

Ejemplo:
<form name="datos">
<input name="texto" type="text" width="200" value="20-23113165-6" />
<input name="boton" type="button" value="esCUIT" onclick="javascprit:alert(esCUIT(document.datos.texto.value));" />
<form name="datos">
</form

E34XYZJSJQCD

0 comentarios:

Publicar un comentario en la entrada

Los comentarios son leídos y moderados.

- Los comentarios deben ser relacionados al articulo sobre el cual se desea comentar.
- Si deseas solicitar ayuda, que no tenga relación alguna con el articulo, utiliza la pagina de Contacto.
- Los comentarios serán publicados lo antes posible.

Bajo ningún punto de vista se publicaran comentarios que sean ofensivos, discriminatorios o SPAM.
Todo queda a criterio del administrador.

Te recomiendo leer...

Articulo relacionado...