| El script | Como funciona |
| //Mas en: http://javascript.espaciolatino.com/ //Objeto oNumero function oNumero(numero) { //Propiedades this.valor = numero || 0 this.dec = -1; //Métodos this.formato = numFormat; this.ponValor = ponValor; //Definición de los métodos function ponValor(cad) { if (cad =='-' || cad=='+') return if (cad.length ==0) return if (cad.indexOf('.') >=0) this.valor = parseFloat(cad); else this.valor = parseInt(cad); } function numFormat(dec, miles) { var num = this.valor, signo=3, expr; var cad = ""+this.valor; var ceros = "", pos, pdec, i; for (i=0; i < dec; i++) ceros += '0'; pos = cad.indexOf('.') if (pos < 0) cad = cad+"."+ceros; else { pdec = cad.length - pos -1; if (pdec <= dec) { for (i=0; i< (dec-pdec); i++) cad += '0'; } else { num = num*Math.pow(10, dec); num = Math.round(num); num = num/Math.pow(10, dec); cad = new String(num); } } pos = cad.indexOf('.') if (pos < 0) pos = cad.lentgh if (cad.substr(0,1)=='-' || cad.substr(0,1) == '+') signo = 4; if (miles && pos > signo) do{ expr = /([+-]?\d)(\d{3}[\.\,]\d*)/ cad.match(expr) cad=cad.replace(expr, RegExp.$1+','+RegExp.$2) } while (cad.indexOf(',') > signo) if (dec<0) cad = cad.replace(/\./,'') return cad; } }//Fin del objeto oNumero: |
En muchas ocasiones hemos necesitado formatear un número para qe se presente en pantalla con un cierto número de decimales o con los separadores de miles. Este objeto número permite hacer esto. Para hcer esto usamos un objeto oNumero con dos propiedades y dos métodos. Las propiedades son valor y dec. La primera es donde se almacena el valor numérico propiamente dicho, mientras que la segunda se usa para indicar que el número tiene posiciones decimales. Los métodos son: ponValor() y formato(). El primero sencillamente pone el valor numérico partiendo de una cadena, mientras el segundo coloca los puntos decimales y los separadores de miles, para ello necesita dos argumentos: uno indicando el número de decimales que deseamos visualizar y otro para indicar si queremos que aparezcan los separadores de miles. |
| La página | Como se usa |
| <body> < script language="Javascript"> var numero = new oNumero(12345) document.write("El número: " + numero.valor+'<br>') document.write("Formateado queda: ") document.write(numero.formato(2, true) < /script> < /body> |
Cuando muestres la página
con este código en pantalla el explorador te mostrará:
El número: 12345 Pues le hemos indicado que formatee el número 12345 con 2 decimales
y separador de miles. |