Si es un desarrollador experimentado, puede pensar que esta pregunta es simple, pero a veces encontraremos esta pregunta más interesante.
Primero, echemos un vistazo a la definición de una matriz: "Una matriz es solo una lista de valores a los que se puede acceder utilizando un entero como" clave ". La lista comienza en 0 y sube desde allí". , Aquí usamos objetos para describir la definición de una matriz:
La copia del código es la siguiente:
var arr = ["benjamin", "zuoJj"];
// =>
var arr = {
"0": "Benjamin",
"1": "Zuojj"
};
Mirando el ejemplo anterior, siempre siento que falta algo, ok, la longitud de la matriz:
La copia del código es la siguiente:
var arr = {
"0": "Benjamin",
"1": "Zuojj",
"Longitud": 2
};
Sabemos que en el idioma JavaScript, una matriz es un objeto especial. Podemos acceder a las propiedades del objeto accediendo a la matriz. Al mismo tiempo, una matriz también puede agregar propiedades como un objeto. Vea el siguiente ejemplo:
La copia del código es la siguiente:
var arr = {
"0": "Benjamin",
"1": "Zuojj",
"Longitud": 2
};
// salidas: "Benjamin"
console.log (arr [0]);
// salidas: 2
console.log (arr.length);
var arr = ["benjamin", "zuoJj"];
arr.url = "www.vevb.com";
// salidas: "www.vevb.com"
console.log (arr.url);
// salidas: 2
console.log (arr.length);
Echemos un vistazo a los métodos de matriz. Existen muchos métodos operativos para matrices, como índicef/slice/splice/sort, etc. Sabemos que estos métodos realmente existen en la matriz.prototype. Vea el siguiente ejemplo:
La copia del código es la siguiente:
var arr = ["benjamin", "zuoJj"];
// salidas: 1
console.log (arr.indexof ("zuoJj"));
arr.indexof = function (str) {
devolver "¡Es un índice personalizado!";
}
// salidas: "¡Está personalizado índice de!"
console.log (arr.indexof ("zuoJj"));
De hecho, podemos sobrecargar todos los métodos de matriz usando objetos. Consulte el siguiente ejemplo de método de empuje:
La copia del código es la siguiente:
var arr = {
Longitud: 0,
push: function (val) {
//Asignación
esto [this.length] = val;
// Actualizar la longitud de la matriz
this.length += 1;
// Devuelve la longitud de la matriz
devolver esto.length;
}
}
arr.push ("zuojj");
arr.push ("benjamin");
// Object {0: "Zuojj", 1: "Benjamin", Longitud: 2, Push: Function}
console.log (arr);
Pero hay una definición literal de una matriz que no se puede implementar nuevamente:
La copia del código es la siguiente: var arr = ["benjamin", "zUojj"];
Pero en su lugar podemos usar el constructor:
La copia del código es la siguiente: var arr = new Array ("benjamin", "zUojj");
Si la matriz de definición literal no es aplicable, entonces podemos redefinir la definición de la matriz, a nuestra manera.
La copia del código es la siguiente: var myarr = new CustomArray ("Benjamin", "ZUOJJ");
Ahora sabes cómo funcionan las matrices en JavaScript, espero que sea útil para todos.