recorrer objetos matriz especifico eliminar elementos elemento ejemplos buscar array agregar javascript arrays object javascript-objects declaration

objetos - ¿Cuál es la diferencia entre "{}" y "[]" al declarar una matriz de JavaScript?



matriz javascript (7)

Cuando usted declara

var a=[];

Usted está declarando una matriz vacía.

Pero cuando estás declarando

var a={};

Usted está declarando un objeto.

Aunque Array también es Objeto en Javascript, es una clave numérica de valores emparejados. Los cuales tienen toda la funcionalidad del objeto pero han agregado algunos métodos de Array como Push, Splice, Length, etc.

Así que si quieres Algunos valores en los que necesitas usar teclas numéricas usa Array. sino usar objeto puedes crear objetos como:

var a={name:"abc",age:"14"};

Y puede acceder a valores como

console.log(a.name);

¿Cuál es la diferencia entre "{}" y "[]" al declarar una matriz de JavaScript? Normalmente declaro como

var a=[];

¿Cuál es el significado de declarar la matriz como var a={}


En JavaScript, los Arrays y los Objetos son en realidad muy similares, aunque en el exterior pueden verse un poco diferentes.

Para una matriz:

var array = []; array[0] = "hello"; array[1] = 5498; array[536] = new Date();

Como puede ver, las matrices en JavaScript pueden ser dispersas (las indicaciones válidas no tienen que ser consecutivas) y pueden contener cualquier tipo de variable. Eso es bastante conveniente.

Pero como todos sabemos, JavaScript es extraño, así que aquí hay algunos bits extraños:

array["0"] === "hello"; // This is true array["hi"]; // undefined array["hi"] = "weird"; // works but does not save any data to array array["hi"]; // still undefined!

Esto se debe a que todo en JavaScript es un Objeto (por lo que también puede crear una matriz utilizando el new Array() ). Como resultado, cada índice en una matriz se convierte en una cadena y luego se almacena en un objeto, por lo que una matriz es solo un objeto que no permite que nadie almacene nada con una clave que no sea un número entero positivo.

Entonces, ¿qué son los objetos?

Los objetos en JavaScript son como matrices, pero el "índice" puede ser cualquier cadena.

var object = {}; object[0] = "hello"; // OK object["hi"] = "not weird"; // OK

¡Incluso puedes optar por no usar los corchetes cuando trabajas con objetos!

console.log(object.hi); // Prints ''not weird'' object.hi = "overwriting ''not weird''";

Puedes ir aún más lejos y definir objetos así:

var newObject = { a: 2, }; newObject.a === 2; // true


Nadie parece estar explicando la diferencia entre una matriz y un objeto.

[] está declarando una matriz.

{} está declarando un objeto.

Una matriz tiene todas las características de un objeto con características adicionales (puede pensar en una matriz como una subclase de un objeto) donde se agregan métodos y capacidades adicionales en la subclase Array. De hecho, typeof [] === "object" para mostrarle que una matriz es un objeto.

Las características adicionales consisten en una propiedad mágica .length que realiza un seguimiento del número de elementos en la matriz y una gran cantidad de métodos para operar en la matriz como .push() , .pop() , .slice() .splice() , etc ... Puede ver una lista de métodos de matriz here .

Un objeto le permite asociar un nombre de propiedad con un valor como en:

var x = {}; x.foo = 3; x["whatever"] = 10; console.log(x.foo); // shows 3 console.log(x.whatever); // shows 10

Se puede acceder a las propiedades de los objetos mediante la sintaxis de x.foo o mediante la sintaxis similar a una matriz x["foo"] . La ventaja de la última sintaxis es que puede usar una variable como el nombre de la propiedad como x[myvar] y al usar la última sintaxis, puede usar nombres de propiedad que contengan caracteres que Javascript no permita en la sintaxis de x.foo .

Un nombre de propiedad puede ser cualquier valor de cadena.

Una matriz es un objeto, por lo que tiene las mismas capacidades que un objeto, además de un conjunto de características adicionales para administrar una lista ordenada y secuencial de índices numerados desde 0 hasta una cierta longitud. Las matrices se utilizan normalmente para una lista ordenada de elementos a los que se accede mediante un índice numérico. Y, debido a que la matriz está ordenada, hay muchas características útiles para administrar el orden de la lista .sort() o para agregar o eliminar elementos de la lista.


Se puede entender así:

var a= []; //creates a new empty array var a= {}; //creates a new empty object

También puedes entender que

var a = {}; es equivalente a var a= new Object();

Nota:

Puedes usar Arrays cuando te molesta el orden de los elementos ( del mismo tipo ) en tu colección, de lo contrario puedes usar objetos. En los objetos el pedido no está garantizado.


Sintaxis de json

objeto = {} | {miembros}

  • miembros = par | pareja, miembros
  • pair = cadena: valor

array = [] | [elementos]

  • elementos = valor | elementos de valor

value = string | number | object | array | true | false | null


Son dos cosas diferentes..

[] está declarando un Array:
Dado, una lista de elementos mantenidos por índice numérico.

{} está declarando un nuevo objeto:
dado, un objeto con campos con nombres y tipo + valor,
a algunos les gusta pensar en ello como "matriz asociativa". Pero no son matrices, en su representación.

Puedes leer más en este artículo


var a = [];

se usa para corchetes para una serie de valores simples. p.ej.

var name=["a","b","c"] var a={}

También se usa para matrices de valores y objetos / propiedades. p.ej.

var programmer = { ''name'':''special'', ''url'':''www.google.com''}