método de matriz en js

Acabado del método de matriz js

Hoy compartiré con ustedes algunos métodos de matriz js. A menudo usaremos estos métodos en el proyecto. Hay muchos métodos que no se usan con frecuencia y pueden olvidarse después de un tiempo, así que ordenaré algunos métodos para su conveniencia. Preguntar.

1. Función concat ()
: fusionar matrices, puede fusionar una matriz o múltiples matrices, devolverá los datos después de la matriz combinada y no cambiará la matriz original.
p.ej:

        var arr=[1,2,3,'hi'];
        var arr1=['你好'];
        console.log(arr.concat(arr1));             // [1,2,3,'hi','你好']
        console.log(arr);                         //[1,2,3,'hi']

2. Función join()
: convierte la matriz en una cadena y devuelve los datos de la cadena convertida sin cambiar la matriz original.
Nota: Use comillas dobles entre ( ) para incluir el delimitador que desea usar. El valor predeterminado es una coma. Para facilitar la visualización, uso - aquí.
p.ej:

    var arr=[1,2,3,'hi'];
    var arr1=['你好'];
    console.log(arr.join(-));                  // 1-2-3-'hi'
    console.log(arr);                         //[1,2,3,'hi']

3. Función pop()
: elimina el último dígito de la matriz y devuelve los datos eliminados, lo que cambiará la matriz original.
p.ej:

    var arr=[1,2,3,'hi'];
    var arr1=['你好'];
    console.log(arr.pop());                    // hi
    console.log(arr);                         //[1,2,3]

4. Función shift()
: elimina los primeros datos de la matriz y devuelve la longitud de la nueva matriz, que cambiará la matriz original.
p.ej:

    var arr=[1,2,3,'hi'];
    var arr1=['你好'];
    console.log(arr.shift());                  // 1
    console.log(arr);                         //[2,3,'hi']

5. Función unshift()
: agregue uno o más datos en la primera posición de la matriz y devuelva la longitud de la nueva matriz, que cambiará la matriz original.
Nota: Los datos devueltos por el método unshift() son la longitud de la nueva matriz y los datos que agrega pueden ser uno o más.
p.ej:

    var arr=[1,2,3,'hi'];
    var arr1=['你好'];
    console.log(arr.unshift('word'));                  // 5
    console.log(arr1.unshift('marry'));               //  2
    console.log(arr);                                // ['word',1,2,3,'hi']
    console.log(arr1);                              // ['marry','你好']

6. Función push()
: agregue uno o más datos al último dígito de la matriz y devuelva la longitud de la nueva matriz, que cambiará la matriz original.
Nota: Los datos devueltos por el método push() son la longitud de la nueva matriz y los datos que agrega pueden ser uno o más.
p.ej:

    var arr=[1,2,3,'hi'];
    var arr1=['你好'];
    console.log(arr.push('word'));                     // 5
    console.log(arr1.push('marry'));                  //  2
    console.log(arr);                                // [1,2,3,'hi','word']
    console.log(arr1);                              // ['你好','marry']

7. Función inversa ()
: invierte los datos de la matriz y devuelve la matriz invertida, que cambiará la matriz original.
p.ej:

    var arr=[1,2,3,'hi'];
    console.log(arr.reverse());                // ['hi',3,2,1]
    console.log(arr);                         // ['hi',3,2,1]

8. Función de empalme ()
: agregue o elimine de la matriz, o reemplace los elementos en la matriz, y luego devuelva los elementos eliminados y reemplazados.
Parámetros: splice(start,num,data1,data2,…) Todos los parámetros son opcionales.
p.ej:

    var arr=[1,2,3,'hi'];
    console.log(arr.spilce(2,0,"a","b"));      // []
    console.log(arr);                         // [1,2,"a","b",3,"hi"]

9. Función toString()
: convierte una matriz en una cadena, similar a join() sin parámetros, este método se llamará cuando los datos se conviertan implícitamente. Si se llama manualmente, se convertirá directamente en una cadena y no cambie la matriz original.
p.ej:

    var arr=[1,2,3,'hi'];
    console.log(arr.spilce(2,0,"a","b"));      // 1,2,3,'hi'
    console.log(arr);                         // [1,2,3,"hi"]

10. Función valueOf()
: Devuelve el valor original de la matriz (generalmente la propia matriz), que suele ser llamado por js en segundo plano y no aparece en el código.
p.ej:

    var arr=[1,2,3,'hi'];
    console.log(arr.valueOf());                // [1,2,3,'hi']
    console.log(arr);                         // [1,2,3,"hi"]
    console.log(arr.valueOf()==arr);         // true

11. función indexOf()
: de acuerdo con los datos especificados, de izquierda a derecha, consulta la posición en la matriz, si los datos especificados no existen, devuelve -1, encuentra los datos especificados y devuelve el índice de los datos.
Parámetros: indexOf(value,start), value es el dato a consultar, start es opcional, indica la posición para iniciar la consulta, cuando start es un número negativo, cuenta hacia adelante desde el final de los datos, si existe valor no se puede consultar, entonces el método devuelve -1.
Nota: Si se encuentran los datos, devuelva el índice de los datos directamente y no continúe buscando, por
ejemplo:

	 var str = ["h","e","l","l","o"];
	 console.log(str.indexOf("l"));        //2
	 console.log(str.indexOf("l",3));      //3
	 console.log(str.indexOf("l",4));      //-1
	 console.log(str.indexOf("l",-1));     //-1
	 console.log(str.indexOf("l",-3));     //2

12. Función forEach()
: un nuevo método en es5, utilizado para recorrer la matriz, sin valor de retorno.
Parámetros: forEach (devolución de llamada); la devolución de llamada tiene tres parámetros por defecto, a saber, valor (datos de la matriz atravesada), índice (índice correspondiente), self (matriz en sí),
por ejemplo:

var arr = ["Tom","Jack","Lucy","Lily","May"];
var a = arr.forEach(function(value,index,self){
    
    
     console.log(value + "--" + index + "--" + (arr === self));
})
// 打印结果为:
// Tom--0--true
// Jack--1--true
// Lucy--2--true
// Lily--3--true
// May--4--true
console.log(a);     //undefined---forEach没有返回值
//该方法为遍历方法,不会修改原数组

13. Función map()
: 1. Igual que la función forEach
2. La función de devolución de llamada del mapa devolverá el resultado de la ejecución, y finalmente map devolverá el valor de retorno de la función de devolución de llamada en una nueva matriz para devolver.
Mapa de parámetros (devolución de llamada); la devolución de llamada tiene tres parámetros por defecto: valor, índice, auto,
por ejemplo:

//功能1:同forEach
    var arr = ["Tom","Jack","Lucy","Lily","May"];
    var a = arr.map(function(value,index,self){
    
    
        console.log(value + "--" + index + "--" + (arr === self))
    })
    // 打印结果为:
    // Tom--0--true
    // Jack--1--true
    // Lucy--2--true
    // Lily--3--true
    // May--4--true

    //功能2:每次回调函数的返回值被map组成新数组返回
    var arr = ["Tom","Jack","Lucy","Lily","May"];
    var a = arr.map(function(value,index,self){
    
    
        return "hi:"+value;
    })
    console.log(a);     //["hi:Tom", "hi:Jack", "hi:Lucy", "hi:Lily", "hi:May"]
    console.log(arr);   //["Tom", "Jack", "Lucy", "Lily", "May"]---原数组未改变

14. función filter()
: 1. Igual que la función forEach
2. La función de devolución de llamada del filtro debe devolver un valor booleano. Cuando es verdadero, los datos de la matriz actual se devuelven al filtro y, finalmente, el filtro combina los devolver valores de todas las funciones de devolución de llamada en una nueva matriz Return (puede entenderse como filtrado).
Parámetros: filtro (devolución de llamada), los parámetros de devolución de llamada son valor, índice, auto,
por ejemplo:

//功能1:同forEach
    var arr = ["Tom","Jack","Lucy","Lily","May"];
    var a = arr.filter(function(value,index,self){
    
    
        console.log(value + "--" + index + "--" + (arr === self))
    })
    // 打印结果为:
    // Tom--0--true
    // Jack--1--true
    // Lucy--2--true
    // Lily--3--true
    // May--4--true

    //功能2:当回调函数的返回值为true时,本次的数组值返回给filter,被filter组成新数组返回
    var arr = ["Tom","Jack","Lucy","Lily","May"];
    var a = arr.filter(function(value,index,self){
    
    
        return value.length > 3;
    })
    console.log(a);         //["Jack", "Lucy", "Lily"]
    console.log(arr);       //["Tom", "Jack", "Lucy", "Lily", "May"]---原数组未改变

Supongo que te gusta

Origin blog.csdn.net/weixin_44237840/article/details/114012605
Recomendado
Clasificación