Errores típicos en JavaScript
Hay una serie de errores típicos en JavaScript (y en otros lenguajes) que ocurren, a mi juicio, más por despiste que por desconocimiento, pero que pueden tenernos un tiempo buscando el error sin encontrarlo por que ni tan siquiera podemos considerarlo.
Vamos a analizarlos…
Equivocar el operador de comparación
Ya no solo por que se cambie el tipo de una variable, también debido a que en muchas ocasiones escribimos = en lugar ==, lo cual nos da resultados erróneos.
Y por supuesto cuando utilizamos === y el tipo de variable no coincide.
var x = 0; if (x = 10) var x = 10; var y = "10"; if (x === y)
Confundir adición y concatenación
Adición se refiere a sumar números
Concatenación se refiere a concatenar cadenas
Este error se puede dar debido a que en JavaScript se utiliza el mismo operador para las dos acciones (+)
Por lo que hay que tener en cuenta siempre el tipo de operación que queremos realizar y como realizara, como vemos en el siguiente ejemplo:
var x = 10; var y = 5; var z = x + y; // el resultado es 15 var x = 10; var y = "5"; var z = x + y; // el resultado es "105"
Error al hacer operaciones con comas
Es bastante común que, junto con JavaScript, muchos lenguajes de programación cometan errores al utilizar operaciones con comas, lo cual puede ser un autentico quebradero de cabeza para las aplicaciones, por ello debemos de utilizar multiplos de diez para multiplicar y dividir por ellos nuestros valores y eliminar el error.
var x = 0.1; var y = 0.2; x = x * 10; y = y *10; var z = x + y; z = z / 10;
En este ejemplo el resultado es 0.3, pero si no hubieramos multiplicado y dividido entre 10 el reusltado hubiera sido algo parecido a 0.30000000000000004
Ruptura de cadenas
Otro de los errores típicos en JavaScript es romper las cadenas entre líneas del siguiente modo:
document.getElementById("demo").innerHTML ="Hola Mundo!";
De este modo no obtendremos ningún resultado, de modo que tenemos varias opciones:
- Cortar la cadena en diferentes trozos concatenandola
- Terminar cada línea que se interrumpa con el valor \ para que JavaScript siga ejecutando todo como una cadena
document.getElementById("demo").innerHTML = "Hola \ Mundo!";
Los ;
Hay que tener cuidado con poner ; de más ya que como en el siguiente ejemplo pueden romper el flujo del código:
if (x == 19); { //código }
Usar matrices asociativas
Algunos lenguajes como PHP son capaces de utilizar matrices asociativas (par nombre – valor), aunque por desgracia JavaScript no es capaz de leer este tipo de matrices, razón por la cual muchas veces podemos intentar hacer que JS tenga un comportamiento que le es imposible, ya que solo utiliza índices numéricos para acceder a los valores.
Terminar una definición de matriz o de un objeto con una coma
Otro error típico es terminar la declaración de un array con una coma como en el siguiente caso:
puntos = [40, 100, 1, 5, 25, 10,];
En los objetos pasa lo mismo que en las matrices, nunca deben de terminar con una coma:
persona = {nombre:"Juana", apellido:"Calamidad", edad:34,}
Indefinido NO es nulo
En JS, nulo es para objetos, e indefinido es para las variables, propiedades y métodos.
Para ser nulo, un objeto tiene que estar definido, de lo contrario será indefinido.
There are 2 Comments.