En los lenguajes de programación, las matrices (matrices) son una función muy común; Son una variable especial que se puede usar para almacenar múltiples valores numéricos al mismo tiempo. Sin embargo, cuando se trata de JavaScript, hay muchas otras cosas para explorar.
En este artículo, discutiremos tres características menos comunes de las matrices JavaScript.
1. Agregue propiedades personalizadas a la matriz
Al buscar definiciones sobre las matrices de JavaScript en línea, encontrará que casi todos tienen la misma definición de matrices: un objeto.
De hecho, todo lo que procesamos con JavaScript puede considerarse un objeto. Hay dos tipos de datos en JavaScript, el tipo básico es el tipo de objeto, pero el tipo básico se incluye básicamente en el tipo de objeto.
Las matrices, las funciones y la fecha son objetos predefinidos en JavaScript, y todos contienen métodos, propiedades y su sintaxis estandarizada respectiva.
Las matrices JavaScript tienen las siguientes tres propiedades diferentes:
1) El índice de la matriz también es su atributo
2) Propiedades incorporadas
3) Puede agregar propiedades personalizadas usted mismo
Los dos primeros atributos son bien conocidos por todos. Puede usarlos todos los días, pero todavía quiero decir algunas palabras más aquí, y luego hablemos de cómo agregar atributos personalizados a las matrices.
Tomar el índice como propiedad
Las matrices JavaScript pueden usar sintaxis de soporte cuadrado, como var ary = ["naranja", "manzana", "lychee"];.
El índice de un elemento de matriz es básicamente una propiedad, y los nombres de sus propiedades son siempre enteros no negativos.
El par de elementos de índice de una matriz es similar a un par de valor clave de un objeto. Los índices son características únicas de los objetos de matriz, a diferencia de otras propiedades incorporadas, que se pueden configurar individualmente a través de soportes cuadrados, como Ary [3] = "Peach";.
Propiedades incorporadas
Las matrices tienen propiedades incorporadas como Array.Length. Esta propiedad de longitud contiene un valor entero que representa la longitud de la matriz.
En términos generales, las propiedades incorporadas a menudo se pueden encontrar en objetos JavaScript predefinidos, como matrices. Las propiedades incorporadas se combinan con métodos incorporados, que pueden personalizar objetos ordinarios para satisfacer diferentes necesidades.
Al acceder a las propiedades incorporadas, puede usar dos sintaxis: Object.Key u Object ["Key"]. Es decir, cuando obtienes la longitud de la matriz, puedes escribirlo como ary ["longitud"].
Crear propiedades personalizadas para objetos de matriz
Ahora hablemos de cómo agregar propiedades personalizadas a una matriz. Una matriz es un objeto predefinido que almacena diferentes tipos de valores en diferentes índices.
Normalmente, no necesitamos agregar atributos personalizados a las matrices; Por esta razón, cuando aprendimos por primera vez JavaScript, nadie nos dijo que podíamos agregar atributos a las matrices. De hecho, si desea agregar pares de valor clave a la matriz como tratar un objeto general, también puede usar un objeto general para lograr su objetivo. Sin embargo, esto no quiere decir que no haya casos especiales, en algunos casos puede aprovechar el hecho de que una matriz también es un objeto y agregarle una o más propiedades personalizadas.
Por ejemplo, puede agregar una propiedad personalizada a la matriz que reconoce el elemento "Kind" o "Clase". Para más detalles, consulte el ejemplo a continuación:
var ary = ["naranja", "manzana", "lychee"]; ary.itemclass = "frutas"; console.log (ary + "son" + ary.itemclass);
Tenga en cuenta que las propiedades personalizadas que agregan a la matriz son contables, es decir, pueden ser seleccionadas por bucles como para ... en.
2. Loop en elementos de matriz
Se podría decir: "Lo he conocido desde hace mucho tiempo". Así es, ya sabes cómo indexar elementos de matriz. Pero puede sentir que la declaración "bucle en elementos de matriz" es un poco abstracto porque lo que realmente encajamos es el índice de la matriz.
Dado que los índices de matriz están compuestos de enteros no negativos, generalmente comenzamos desde 0 hasta la longitud completa de la matriz para iterar sobre el valor entero, y luego usamos ese valor iterado para obtener el elemento de matriz de acuerdo con el índice específico.
Sin embargo, dado que aparece ECMAScript6, ya no podemos preocuparnos por los índices y el bucle directamente en los valores de matriz, y esta operación se puede realizar utilizando un para ... de bucle.
En una matriz, el para ... de bucle puede recorrer los elementos de la matriz de acuerdo con el orden del índice. En otras palabras, puede controlar la iteración del índice y obtener un valor de matriz existente basado en el índice dado. Este bucle es muy práctico si solo desea recorrer todos los elementos de matriz y usarlos.
var ary = ["naranja", "manzana", "lychee"]; para (dejar elemento de ary) {console.log (elemento);} Para comparación, con el regular para bucle, obtenemos los índices en lugar de los valores como salida. var ary = ["naranja", "manzana", "lychee"]; for (var item = 0; item <ary.length; item ++) {console.log (elemento);}3. El número de elementos no es igual a su longitud
En términos generales, cuando hablamos de la longitud de la matriz, creemos que su longitud es el número de valores de matriz o la longitud que establecemos para la matriz manualmente. Pero, de hecho, la longitud de la matriz depende del índice existente más grande dentro de él.
La longitud es una propiedad muy flexible. Ya sea que haya ajustado la longitud de la matriz o no, siempre que siga agregando nuevos valores a la matriz, su longitud también aumentará.
var ary = []; ary.length = 3; console.log (ary.length); ary [5] = "abcd"; console.log (ary.length);
En el ejemplo anterior, puede ver que solo especificé un valor para el índice 5 de la matriz, y luego la longitud se convirtió en 6. Ahora, si cree que agrega un valor al índice 5 y la matriz creará automáticamente el índice 0-4, entonces su especulación será incorrecta. No hay un índice 0-4 que debería existir en la matriz. Puede usar el operador in para verlo.
var ary = []; ary.length = 3; console.log (ary.length); ary [5] = "abcd"; console.log (ary.length); console.log (0 en ary);
La matriz Ary anterior se convierte en una matriz escasa por nosotros. El índice de esta matriz no se creará continuamente, y hay aire entre los índices. Lo contrario de la escasa matriz es una matriz densa. El índice de matrices densas se crea continuamente, con el número de elementos igual a su longitud.
La propiedad de longitud de una matriz también se puede usar para acortar números, asegurando que el número máximo de índices en la matriz siempre sea menor que la matriz en sí, porque de manera predeterminada, el valor de la longitud siempre será mayor que el mayor número de índices.
En el siguiente ejemplo, puede ver que utilicé la forma para reducir la longitud de la matriz Ary para la comunidad de los elementos en el índice 5.
var ary = []; ary.length = 3; console.log (ary.length); ary [5] = "abcd"; console.log (ary.length); ary.length = 2; console.log (ary.length); console.log (ary [5]);
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.