|     Inicio    |   |         |  |   FOROS      |  |      |      
   Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL
  Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino
  AutoIt (Programación) Visual Basic Script (VBS) FireBase (BD autoactualizable) NodeMCU como Arduino
  Teleco - Emisora de A.M. Visual Basic Cosas de Windows Webs interesantes
Translate:
Búsqueda en este sitio:


.

App inventor 2 en español
Cómo programar los teléfonos móviles con Android.
Curso de App inventor 2 en español - Juan Antonio Villalpando

-- Tutorial de iniciación de App Inventor 2 en español --

Volver al índice del tutorial

___________________________

169L.- Separador de miles y coma decimal con JavaScript.

p169L_javascript_separamiles.aia

- En tutoriales anteriores vimos como separar un número en miles y decimal, es decir escribimos:

123456789,4567 y obtenemos

123.456.789,4567

76.- Separador de miles en un número.

76B.- Separador de miles en un número. Otro método.

- Como ves es un código largo, vamos a realizarlo ahora mediante JavaScript.

- Además de poner los separadores de miles y la coma, se podrá elegir el número de decimales presentados.

_________________
- Diseño.

- Puedes poner en Ancho y el Alto del VisorWeb a 1 pixel, ya que no se envía ninguna información visible.

- Subimos el archivo miles.htm

_________________
- Bloques.

- Si estás probando la aplicación deja el bloque file:///mnt/sdcard/AppInventor/assets/miles.htm
- Si vas a Generar la aplicación para crear el archivo instalador .apk, previamente a Generar debes cambiar a: file:///android_asset/miles.htm

_________________
- Países según su separador decimal.

- En los países de color verde claro utilizan: 123.456.789,1234

- En los países de color azul utilizan: 123,456,789.1234

- En los países de color verde fuerte utilizan los dos anteriores.

- En los países de color rojo utilizan: 123 456 789٫1234

 

_________________
- Archivo miles.htm

- En el formato europeo-sudamericano. El separador decimal es la coma y el separador de miles el punto.

miles.htm
<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head><body>
<script>
   datos =  window.AppInventor.getWebViewString().split(",");
   resultado = datos[0].toString().replace(/\B(?=(\d{3})+(?!\d))/g, ".");
   if (datos[1]){ resultado += "," + datos[1].substr(0,3); }
   window.AppInventor.setWebViewString(resultado);
    // Juan Antonio Villalpando
</script>
</body></html>

- En el formato inglés-norteamericano. El separador decimal es el punto y el separador de miles la coma.

miles.htm
<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head><body>
<script>
   datos =  window.AppInventor.getWebViewString().split(".");
   resultado = datos[0].toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
   if (datos[1]){ resultado += "." + datos[1].substr(0,3); }
   window.AppInventor.setWebViewString(resultado);
    // Juan Antonio Villalpando
</script>
</body></html>

_________________
- Comentarios.

- Puedes elegir uno de los dos archivos según quieras utilizar el separador decimal.

- Fíjate en esta parte: datos[1].substr(0,3);

indica que saldrá con 3 decimales.

- El código que realiza el proceso de poner los puntos de los miles resultado = datos[0].toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");

 es bastante complicado, utiliza Expresiones regulares (Regexp).

https://www.w3schools.com/jsref/jsref_obj_regexp.asp

_________________
- Propuesta.

- Modifica el archivo miles.htm para que según le llegue un separador decimal punto o coma, haga la separación conveniente según el modelo adoptado por el país.

- Para que sea más sencillo esa adaptación automática se hará cuando el número lleve decimal, por ejemplo 3456,56 o bien 3456.56. Pero no lo hará si el número sea entero.

__________________________________

 

- Mi correo:
juana1991@yahoo.com
- KIO4.COM - Política de cookies. Textos e imágenes propiedad del autor:
© Juan A. Villalpando
No se permite la copia de información ni imágenes.
Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación y realizan análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. Acepto    Más información