TuFuncion TuFuncion
Buscar
Las funciones Javascript más útiles

Esta es una pequeña recopilación de funciones Javascript que deberíamos tener siempre presente en nuestra mente a la hora de desarrollar una aplicación Javascript.

Algunas de estas funciones son muy comunes en otros lenguajes, pero por un motivo o por otro en Javascript no estan tan popularizadas.

Trim
Trim es posiblemente una de las funciones más útiles que podemos encontrar a la hora de trabajar con cadena pero es una función que echamos de menos en Javascript, simplemente se encarga de eliminar los espacios en blanco del principio y fin de una cadena y en casi cualquier lenguaje de programación hay una función parecida que cumple con esta función, lástima que Javascript no la posee pero con la ayuda de Prototype nos podremos crear nuestra función Trim.

Para la creación de esta función nos vamos a aprovechar de la posibilidad que nos da Prototype de modificar un objeto añadiendole atributos o métodos nuevos, esto incluye los objetos nativos de Javascript.

String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g,”");
}
String.prototype.ltrim = function() {
return this.replace(/^\s+/g,”");
}
String.prototype.rtrim = function() {
return this.replace(/\s+$/g,”");
}

y su uso…

var test = ” Test “;
var test1 = test.ltrim(); // devuelve “Test ”
var test2 = test.rtrim(); // devuelve ” Test”
var test3 = test.trim(); // devuelve “Test”

Ordenación numérica
El objeto Array de Javascript tiene un método llamad sort() que es muy eficiente y rápido. Desafortunadamente este por defecto unicamente nos sirver para ordenar letras esto significa que si le pasamos un array de números nos los ordenará de manerá alfabética (1,15,100,2,25,200 en vez de 1,2,15,25,100,200).
Tiene una fácil solución con siguiendo un proceso parecido al que hemos utilizado con la creación de la función Trim, lo arreglaremos añadiendo un nuevo método que se llame sortNum que permitirá ordenar nuestros Arrays de manera numérica.

Array.prototype.sortNum = function() {
return this.sort( function (a,b) { return a-b; } );
}

y su uso…

var tmp = [5,9,12,18,56,1,10,42,30,7,97,53,33,35,27];
tmp=tmp.sortNum(); // devuelve 1,5,7,9,10,12,18,27,30,33,35,42,53,56,97

Das formato a los números
Dar formato a los números (añadir puntuación o símbolo de moneda) no es una función común a todos los lenguajes de programación por ello y para corregir esta deficiencia nos crearemos una función que formate un número con el estilo que le pidamos.

function formatNumber(num,prefix){
prefix = prefix || ”;
num += ”;
var splitStr = num.split(‘.’);
var splitLeft = splitStr[0];
var splitRight = splitStr.length > 1 ? ‘.’ + splitStr[1] : ”;
var regx = /(\d+)(\d{3})/;
while (regx.test(splitLeft)) {
splitLeft = splitLeft.replace(regx, ‘$1′ + ‘,’ + ‘$2′);
}
return prefix + splitLeft + splitRight;
}

function unformatNumber(num) {
return num.replace(/([^0-9\.\-])/g,”)*1;
}

y su uso…

var test1 = formatNumber(’5123456789.25′); // devuelve 5,123,456,789.25
var test2 = formatNumber(1234.15,’$'); // devuelve $1,234.15
var test3 = unformatNumber(‘$1,234.15′); // devuelve 1234.15

Cookies en Javascript
Las cookies son una constante en la vida del desarrollador y las herramientas que Javascript nos ofrece para explotarlas son a menudo desconocidas, estas son 4 funciones con las que trabajaremos con las cookies tan facilmente como lo hacemos con una variable.

function cookiesAllowed() {
setCookie(‘checkCookie’, ‘test’, 1);
if (getCookie(‘checkCookie’)) {
deleteCookie(‘checkCookie’);
return true;
}
return false;
}

function setCookie(name,value,expires, options) {
if (options===undefined) { options = {}; }
if ( expires ) {
var expires_date = new Date();
expires_date.setDate(expires_date.getDate() + expires)
}
document.cookie = name+’='+escape( value ) +
( ( expires ) ? ‘;expires=’+expires_date.toGMTString() : ” ) +
( ( options.path ) ? ‘;path=’ + options.path : ” ) +
( ( options.domain ) ? ‘;domain=’ + options.domain : ” ) +
( ( options.secure ) ? ‘;secure’ : ” );
}

function getCookie( name ) {
var start = document.cookie.indexOf( name + “=” );
var len = start + name.length + 1;
if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) {
return null;
}
if ( start == -1 ) return null;
var end = document.cookie.indexOf( ‘;’, len );
if ( end == -1 ) end = document.cookie.length;
return unescape( document.cookie.substring( len, end ) );
}

function deleteCookie( name, path, domain ) {
if ( getCookie( name ) ) document.cookie = name + ‘=’ +
( ( path ) ? ‘;path=’ + path : ”) +
( ( domain ) ? ‘;domain=’ + domain : ” ) +
‘;expires=Thu, 01-Jan-1970 00:00:01 GMT’;
}

y su uso…

// Cheque si esta permitido el uso de cookies en el navegador.
if cookiesAllowed() {
alert(‘Si puedes’);
} else {
alert(“Este navegador no permite el uso de cookies.”);
}
// Crear una cookie con nombre miCookie y el valor “Casa” y que expira a los 10 dias
setCookie(‘miCookie’,'Casa’, 10);

// Conseguir el valor de ‘miCookie’
var userCookie = getCookie(‘miCookie’);

// Borrar ‘miCookie’
deleteCookie(‘miCookie’);

Enlaces Relacionados

6 cosas que probablemente no conozcas sobre PHP
PHP y MySql una estrecha relación
Las 10 mejores librerías
Howto encriptar passwords en la base de datos
El framework más popular de Ajax
10 Razones para usar Ajax
Fácil menu contextual con Prototype
Los lenguajes de programación más populares
Y si… Yahoo y Google se parecieran
Google Paint (No oficial)
Las 10 mejores librerías
El framework más popular de Ajax
Tutorial Básico de Ajax
Tendencia de los lenguajes de programación
Paginador con Ajax
Bases de datos y PHP

arrow1 Response

  1. Jesus
    55 mos ago

    Excelentes scripts…!!! ;-) gcs x ayudarnos a mejorar nuestro trabajo y hacerlo mas facil..!!! saludos..

Deja un comentario