数组中的栈方法、队列方法、重排序方法等各种方法

栈是一种LIFO(后进先出)的数据结构,也就是最新添加的项最早被移出。就像汽车开进了死胡同的原理一样
栈方法有:
1,push( )方法从最后面添加元素,并返回修改后的数组长度
2,pop( )方法是删除最末尾的元素,并返回被移除的项
栗子:

var arr = [1, 4, 5, 6, 7, 7, 9];
console.log(arr.push(20)); //8 数组的长度
console.log(arr);// [1, 4, 5, 6, 7, 7, 9,20];

var arr = [1, 4, 5, 6, 7, 7, 9];
console.log(arr.pop()); //9 返回被移除的项
console.log(arr);// [1, 4, 5, 6, 7, 7,];

队列方法
1,unshift( )方法 在数组的最前面添加一个元素,并返回新数组的长度
2,shift()方法 在数组的最前面移除一个元素,并返回被移除的项

 var arr = [1, 4, 5, 6, 7, 7, 9];
console.log(arr.unshift(5)); //8返回新数组的长度
console.log(arr);//[5,1, 4, 5, 6, 7, 7, 9];//返回被移除的项
   var arr = [1, 4, 5, 6, 7, 7, 9];
console.log(arr.shift()); //1返回被移除的项
console.log(arr);//[ 4, 5, 6, 7, 7, 9];返回数组

重排序方法
reverse()方法:反转数组项的顺序。

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

sort()方法:排序
sort()方法会调用每个数组项的toString()转型方法,然后比较得到的字符串,来确定顺序。

      var values = [0,1,5,10,15];
      values.sort();
      console.log(values); //0,1,10,15,5

    解决方法:sort()方法可以接收一个比较函数最为参数,以便指定哪个值位于前面。

    例:
      var values = [0,1,5,10,15];
      values.sort(function(a,b){
        return a-b;   //升序
        return b-a;   //降序
      });
                        
      console.log(values); 

    注意:reverse()和sort()方法的返回值都是经过排序后的数组(改变原数组)。

数组的方法是特别多的,今天就先例子举到这里 !

你可能感兴趣的:(数组中的栈方法、队列方法、重排序方法等各种方法)