Profile cover photo
Profile photo
wextensible.com
22 followers -
Un sitio personal para aprender desarrollo web
Un sitio personal para aprender desarrollo web

22 followers
About
wextensible.com's posts

Post has attachment
El redondeo estándar de fracciones 0.5 se basa en observar el siguiente dígito después de los especificados para redondeo y si es igual o mayor que 5 redondeará arriba, en otro caso se quedará como está. Esta regla se usa en aplicaciones contables y comerciales donde entran en juego cálculos con importes de moneda. Es el caso del cálculo de una factura, realizando un ejemplo para ver cómo redondeamos los resultados parciales y totales.

Los métodos como toFixed() podrían redondear a un número determinado de dígitos fraccionarios. Pero no ejecutan el redondeo estándar en algunos casos. Por ejemplo, si lo aplicamos a 1.025 redondeando a dos dígitos resultará 1.02 en lugar del esperado 1.03. Así que el tema se dedica a presentar ese problema y buscar una función que ejecute correctamente el redondeo estándar.

Post has attachment
Entender el redondeo que aplica el formato IEEE754 es imprescindible para saber por qué suceden algunas cosas con los números en JavaScript. Por ejemplo, por qué la operación 1.33 × 1.4 = 1.862 nos da el resultado 1.8619999999999999 en JavaScript, por debajo del valor esperado. Mientras que 1.33 × 1.1 = 1.463 resulta 1.4630000000000003, por encima del valor.

Post has attachment
Dedicaremos este tema a ver métodos que aplican especialmente a números reales, mejor dicho, a números decimales con parte fraccionaria. Uno de ellos es parseFloat() que convierte un string en un number. El método toExponential() nos permitirán poner un número en formato exponencial mientras que toFixed() y toPrecision() sirven para ajustar el número de dígitos fraccionarios y significativos respectivamente.

También hablaremos de los métodos heredados de Object que son toString() y toLocaleString() que tienen un especial comportamiento con los números. Con el último haremos un generador de formato para presentar números con formato local de moneda o porcentajes.

Post has attachment
En este tema se expone como el formato IEEE754 representa los valores infinito y NaN y que utilidades tenemos en JavaScript para manejarlos. Una cuestión que resolveremos es dónde empieza Infinity. También se dedica el tema a los enteros, explicando con detalle el método parseInt() para convertir a entero.

Post has attachment
En este tema entramos en la materia que me interesaba, saber por ejemplo por qué 1.75 - 1.125 da exactamente 0.625 y sin embargo 1.7 - 1.1 no da el resultado exacto 0.6. Esto tiene que ver con la precisión del formato IEEE754, donde el espaciado de los números es un concepto básico que debemos conocer.

Comentaremos sobre la comparación de números, los dígitos significativos y también sobre la cantidad total de números decimales que podemos representar en dicho formato.

Post has attachment
El Formato IEEE754 es el que usa JavaScript para representar los números decimales. Se basa en un formato de coma flotante en un registro de 64 bits. Se presenta un convertidor IEEE754 con el que podemos extraer dicho formato de un número decimal y que nos servirá en temas posteriores para resolver dudas sobre ejemplos concretos.

Post has attachment
Los números decimales se tienen que representar en binario. Por lo tanto hay que saber al menos como convertir un número decimal en binario y al revés. Presentaremos un convertidor binario-decimal para practicar estas conversiones. Como la representación binaria de un número decimal siempre estará limitada a un número determinado de bits, eso introducirá limitaciones en la precisión que hay que conocer.

Otro tema que afecta a los números tiene que ver con los cálculos de operaciones aritméticas. Se presenta una calculadora binaria para realizar las operación básicas y que nos servirá en temas posteriores para resolver algunas dudas.

Post has attachment
Siguiendo con el repaso de conceptos básicos de JavaScript y al mismo tiempo estudiando las nuevas incorporaciones de ES6 (EcmaScript 2015), ya iba siendo hora de enfrentarme con los números en JavaScript.

Y es que si intentamos entender todo lo que pasa con los números en JavaScript tenemos que conocer algo más que la sintaxis del lenguaje y los métodos del objeto Number. Es necesario conocer la representación binaria de los números, el formato IEEE754 y la limitaciones de la precisión. Es también necesario saber como dicho formato lleva a cabo el redondeo buscando la representación de un un número en dicho formato. Este primer tema será una introducción para luego continuar con los siguientes desarrollando esos puntos.

Post has attachment
JavaScript es un lenguaje débilmente tipado. A una función en ejecución podemos pasarle argumentos de cualquier tipo y la función los recibirá sin más. Sería interesante que las funciones pudieran verificar los tipos que reciben. Y esto es algo que podemos conseguir con un poco de ES6 usando los valores predeterminados en los parámetros.

Post has attachment
http://www.wextensible.com/temas/javascript-objetos/iterar.html

El término iterar debemos entenderlo como repetir un mismo proceso sobre los propiedades de un objeto. Podemos, por ejemplo, recorrer todas las propiedades buscando áquellas cuyos valores sean tipos string y hacer algo con esos valores. Por definición los objetos creados directamente de Object no son iterables, pero otros como los Array si lo son, pues implementan un método Symbol.iterator(). Para iterar por un objeto hemos de recurrir a sus propios métodos, como Object.keys() que recupera un Array con las claves del objeto.
Wait while more posts are being loaded