3

A veces he visto variables que tienen dos parentesis sin nada, es decir esto.

var obtener_teclas = {}

Sobre todo en scripts para capturar las pulsaciones de los teclados, es decir eventos del teclado, ¿esa variable significa que almacenará algún valor? Además esto no es un objeto javascript?

Es que he intentado buscar info. pero no se como buscarlo.

P.D: Y también he visto variables sin valores es decir, esto:

var x;
cleanet
  • 95
  • 1
  • 12

2 Answers2

6

Cuando tienes algo como nombreVariable = {} estas declarando esa variable como un objeto en JavaScript.

Si en vez de eso haces esto : nombreVariable = [] estas declarando un array.

En cuanto a tu pregunta de que significa var x sin ningun valor, lo que estas es declarando una variable simplemente, a la cual se le podra dar valor mas adelante, utilizar en los bucles for, while ..etc o usarla como contador o sumatorio.

DevMind
  • 5,025
  • 11
  • 29
  • 60
5

Con var obtener_teclas = {} simplemente estás definiendo la variable obtener_teclas como un objeto vacío de longitud cero.

var obtener_teclas = {}
console.log(typeof(obtener_teclas));
console.log(obtener_teclas);
console.log(Object.keys(obtener_teclas).length);

//Otras formas de crear un objeto vacío
console.log("*****");

var obtener_teclas2 = Object.create(null);
console.log(typeof(obtener_teclas2));
console.log(obtener_teclas2);
console.log(Object.keys(obtener_teclas2).length);

console.log("*****");

var obtener_teclas3 = new Object();
console.log(typeof(obtener_teclas3));
console.log(obtener_teclas3);
console.log(Object.keys(obtener_teclas3).length);

Podrías inicializar el objeto con valores:

var obtener_teclas = {v: "Valor1", v2: "Valor2"};
    console.log(typeof(obtener_teclas));
    console.log(obtener_teclas);

También puedes añadir valores al objeto a posteriori:

var obtener_teclas = {};
console.log(obtener_teclas);
obtener_teclas.v = "Valor1";
obtener_teclas.v2 = "Valor2";
obtener_teclas.v3 = "Valor3";
console.log(obtener_teclas);

Respecto a var x; estás creando la variable x como undefined.

var x;
console.log(x);

Si quieres más info sobre declaración de variables en JS te recomiendo esta pregunta

Y aquí más info sobre la creación de objetos.

También échale un vistazo al uso de "use strict" en la definición de variables

Kiko_L
  • 6,455
  • 1
  • 11
  • 25