Maison  >  Article  >  développement back-end  >  partage de méthode de tableau js

partage de méthode de tableau js

小云云
小云云original
2018-03-20 16:54:571003parcourir

Les tableaux occupent une place très importante dans js. Cet article partage principalement avec vous les méthodes de tableau de js, dans l'espoir d'aider tout le monde.

1. Ajout et suppression de tableaux La méthode push() ajoute un ou plusieurs éléments à la fin du tableau

  a = []; 

    a.push(“zero”)     // a = [“zero”] 

    a.push(“one”,”two”) // a = [“zero”,”one”,”two”];

La méthode pour supprimer un élément en fin de tableau est la méthode pop() Le principe est de réduire la longueur du tableau de 1 et de renvoyer l'élément supprimé.
2. join()

La méthode Array.join() convertit tous les éléments du tableau en chaînes et les joint ensemble, renvoyant la chaîne générée finale. La valeur par défaut est une virgule, et il peut y avoir n'importe quel caractère entre les deux.

var bb = [‘abc’,’cd’,1,5]; 

    bb.join(“/”)    //”abc/cd/1/5”

La méthode Array.join() est l'opération inverse de la méthode String.split(), qui divise une chaîne en un tableau.

var str = "abc/cd/1/5";
str.split("/")    //["abc", "cd", "1", "5"]

3. reverse()

Array.reverse() inverse l'ordre des éléments dans le tableau,

 var s = [1,2,3]; 

    s.reverse().join(“-“)   //”3-2-1” 
4、sort()

Trie les éléments du tableau et renvoie le tableau trié.
Lorsque sort() ne prend aucun paramètre, il est trié par ordre alphabétique.

 var a = new Array(“banaa”,”apple”,”cherry”); 

    a.sort(); 

    var s = a.join(“/”);   //”apple/banana/cherry”

Pour trier le tableau, vous devez passer une fonction de comparaison. En supposant que le premier paramètre vienne en premier, la fonction de comparaison renvoie une valeur inférieure à 0,
.

 var a = [33,4,111,222]; 

    a.sort()   //111,222,33,4 

    a.sort(function(a,b){return a-b});  //4,33,222,111

5. concat()

La méthode Array.concat() crée et renvoie un nouveau tableau, les éléments du tableau connectés, pas le tableau lui-même, concat( ) ne modifiera pas le tableau appelé
var a = [1,2,3]
var b = a.concat(); Copie du tableau //b = [1,2,3]
a.concat([4,5]); //[1,2,3,4,5]
6. slice()
La méthode Array.slice() renvoie un fragment ou un sous-tableau du tableau spécifié, les paramètres sont la position de départ et la position de fin

var a = [1,2,3,4,5];
var b = a.slice(0,3)  //[1,2,3]
a.slice(3)        //[4,5]
a.slice(1,-1)      //[2,3,4]
a.slice(-3,-2)     //[3]

7. La méthode splice()

Array.splice() insère ou supprime des éléments dans le tableau, ce qui est différent from slice(),concat( ), modifiera le tableau.

  var a = [1,2,3,4,5,6,7,8]; 

    var b = a.splice(4); //a = [1,2,3,4],b=[5,6,7,8] 

    var c = a.slice(1,2)  //a = [1,4] b=[2,3] 

    var a = [1,2,3,4,5]; 

    a.splice(2,0,’a’,’b’)  //a = [1,2,’a’,’b’,3,4,5]

8. push(), pop()

push() ajoute un ou plusieurs éléments à la fin du tableau et renvoie la nouvelle longueur du tableau. pop() supprime le dernier élément et renvoie l'élément supprimé.

 var stack =[]; 

    stack.push(1,2)   //返回2 

    stack.pop()       //返回2 
9、unshift()、shif()

opère sur la tête du tableau, unshift() ajoute un ou plusieurs éléments à la tête et renvoie la longueur, shift() supprime le premier élément du tableau et renvoie

 var a = []; 

    a.unshift(1,2,3,4)    //a:[1,2,3,4] 返回4 

    a.shift()           //a:[2,3,4]  返回1

Méthodes de tableaux dans es5 :

Parcourir, cartographier, filtrer, détecter, simplifier, rechercher des tableaux
1, forEach()

Il parcourt le tableau du début à la fin et appelle la fonction spécifiée pour chaque élément. Cette fonction reçoit trois paramètres, l'élément du tableau (valeur), l'index (index) et le tableau lui-même (arr
) ;

 var data = [1,2,3,4,5]; 

    //每个元素值自加1 

    data.forEach(function(v,i,a){ 

        a[i] = v + 1; 

    }) 

    //[2,3,4,5,6]

2. map()

La méthode map() transmet chaque élément du tableau appelé à la fonction spécifiée et renvoie un nouveau tableau

 a = [1,2,3]; 

    b = a.map(function(x){ 

        return x*x; 

    }) 

    //[1,4,9]

3. filter()

La méthode filter() effectue un jugement logique sur chaque élément du tableau dans la fonction de transfert. La fonction renvoie vrai et faux var une = [1,2,3,4,5];
var b = a.filter(function(x){return x e4e139a65222c090d891859a9a8c414ey)?x:y}) //Trouver la valeur maximale
La fonction réduire() nécessite deux fonctions, la première est une fonction qui effectue l'opération de réduction et la seconde est la valeur initiale.
6. indexOf() et lastIndexOf()

Recherchez les éléments avec une valeur donnée dans l'ensemble du tableau et renvoyez la valeur d'index du premier élément trouvé. S'il n'est pas trouvé, -1 est renvoyé, <.> var une = [0,1,2,1,0];

a.indexOf(1) //1
a.lastIndexOf(1) //3
a.indexOf(3) //-1
Méthode de tableau es6
1. Méthode Array.of(), crée un tableau contenant tous les paramètres

2. , convertissez les objets non-tableaux en tableaux formels
let items = Array.of(1,2);//[1,2]
let items = Array.of(2)  //[2]
let items = Array.of("2")//["2"]
3. find() et findIndex() reçoivent deux paramètres, l'un est une fonction de rappel et l'autre est un paramètre facultatif find() renvoie la valeur trouvée, findeIndex() renvoie. la valeur d'index trouvée,


let number = [25,30,35,40,45]

console.log(number.find(n => n > 33)) / /35

console.log(number.findIndex(n => n >33)) //2
Déduplication de tableau

   
1、遍历数组去重function unique(obj){
    var arr = [];    var len = obj.length;    for(var i=0;i<len;i++){        if(arr.indexOf(obj[i]) == -1){
            arr.push(obj[i])
        }
    }    return arr;
}
unique([1,1,1,2,3])
[1,2,3]2、对象键值对法function unique(obj){
    var tar = {},arr = [],len = obj.length,val,type;    for(var i = 0;i<len;i++){        if(!tar[obj[i]]){
            tar[obj[i]] = 1;
            arr.push(obj[i])
        }
    }    return arr;
}3、es6 new Set()方法Array.from(new Set([1,2,3,3,3])) //[1,2,3]1.

1.数组的添加和删除 push()方法在数组的尾部添加一个或者多个元素
   a = [];
   a.push(“zero”)     // a = [“zero”]
   a.push(“one”,”two”) // a = [“zero”,”one”,”two”];
在数组的尾部删除一个元素方法是pop()方法,原理是使数组的长度减少1,并返回被删除的元素。
2、join()

Array.join()方法将数组中的所有的元素转化为字符串并连接一起,返回最后生成的字符串。默认是是逗号,中间可以是任意的字符。
   var bb = [‘abc’,’cd’,1,5];
   bb.join(“/”)    //”abc/cd/1/5”
Array.join()方法是String.split()方法的逆向操作,后者是将字符串分割成数组。

var str = "abc/cd/1/5";
str.split("/")    //["abc", "cd", "1", "5"]

3、reverse()

Array.reverse()将数组中的元素顺序颠倒,
   var s = [1,2,3];
   s.reverse().join(“-“)   //”3-2-1”
4、sort()

对数组中的元素进行排序,返回排序后的数组。
当sort()不带参数时,是按字母表排序。
   var a = new Array(“banaa”,”apple”,”cherry”);
   a.sort();
   var s = a.join(“/”);   //”apple/banana/cherry”
进行数组排序,要传递一个比较函数,假设第一个参数在前,比较函数返回一个小于0的数值,
   var a = [33,4,111,222];
   a.sort()   //111,222,33,4
   a.sort(function(a,b){return a-b});  //4,33,222,111
5、concat()

Array.concat()方法创建并返回一个新数组,连接的数组元素,不是数组本身,concat()不会修改调用的数组
var a = [1,2,3];
var b = a.concat();   数组的复制//b = [1,2,3]
a.concat([4,5]);      //[1,2,3,4,5]
6、slice()
Array.slice()方法返回制定数组的一个片段或子数组,参数时开始位置、结束位置

var a = [1,2,3,4,5];
var b = a.slice(0,3)  //[1,2,3]
a.slice(3)        //[4,5]
a.slice(1,-1)      //[2,3,4]
a.slice(-3,-2)     //[3]

7、splice()

Array.splice()方法在数组中插入或删除元素,不同于slice(),concat(),会修改数组。
 

 var a = [1,2,3,4,5,6,7,8]; 

    var b = a.splice(4); //a = [1,2,3,4],b=[5,6,7,8] 

    var c = a.slice(1,2)  //a = [1,4] b=[2,3] 

    var a = [1,2,3,4,5];

   a.splice(2,0,’a’,’b’)  //a = [1,2,’a’,’b’,3,4,5]
8、push()、pop()

push()在数组的尾部添加一个或者多个元素,并返回数组的新的长度。pop()删除最后一个元素,返回删除的元素。
   var stack =[];
   stack.push(1,2)   //返回2
   stack.pop()       //返回2
9、unshift()、shif()

在数组的头部进行操作,unshift()在头部添加一个或多个元素,返回长度,shift()删除数组的第一个元素,并返回
   var a = [];
   a.unshift(1,2,3,4)    //a:[1,2,3,4] 返回4
   a.shift()           //a:[2,3,4]  返回1
es5中数组的方法:

遍历、映射、过滤、检测、简化、搜索数组
1、forEach()

是从头至尾遍历数组,为每个元素调用制指定的函数,该函数接收三个参数,数组元素(value)、索引(index)、数组本身(arr);
   var data = [1,2,3,4,5];
   //每个元素值自加1
   data.forEach(function(v,i,a){
       a[i] = v + 1;
   })
   //[2,3,4,5,6]
2、map()

map()方法将调用的数组的每一个元素传递给指定的函数,返回一个新数组
   a = [1,2,3];
   b = a.map(function(x){
       return x*x;
   })
   //[1,4,9]
3、filter()

filter()方法是对数组的每一个元素的,在传递函数中进行逻辑判断,该函数返回true、false
   var a = [1,2,3,4,5];
   var b = a.filter(function(x){return x 358fcddd804258c587bcdb7941212663 n > 33))  //35
console.log(number.findIndex(n => n >33)) //2
数组去重

1、遍历数组去重function unique(obj){
    var arr = [];    var len = obj.length;    for(var i=0;i<len;i++){        if(arr.indexOf(obj[i]) == -1){
            arr.push(obj[i])
        }
    }    return arr;
}
unique([1,1,1,2,3])
[1,2,3]2、对象键值对法function unique(obj){
    var tar = {},arr = [],len = obj.length,val,type;    for(var i = 0;i<len;i++){        if(!tar[obj[i]]){
            tar[obj[i]] = 1;
            arr.push(obj[i])
        }
    }    return arr;
}3、es6 new Set()方法Array.from(new Set([1,2,3,3,3])) //[1,2,3]1.

相关推荐:

vue.js数组更新实例分享

JS数组去重方法总结

js数组常用的一些排序法

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn