//

作者:lofayo    发布于:

问题背景: ==数组在程序中用得较多,它本身的方法也众多,必须整理总结,以理解==

(1)、Array.prototype.join( separator )

        
语法: arr.join( separator )

        
用法: 用分隔符,将数组元素拼接成一个字符串

        
参数: 任意都可以

        
返回值: 返回拼接后的字符串,元素组不变

        
默认情况: 参数为空,将,作为分隔符

.

(2)、Array.prototype.push( elems)

        
语法: arr.push( elem1, elem2,.... )

        
用法: 在数组末尾,追加元素,一个或多个

        
参数: 元素element

        
返回值: 返回新数组的长度

.

(3)、Array.prototype.unshift( elems)

        
语法: arr.unshift( elem1, elem2,.... )

        
用法: 在数组开头,追加元素,一个或多个

        
参数: 元素element

        
返回值: 返回新数组的长度

.

(4)、Array.prototype.pop()

        
语法: arr.pop()

        
用法: 删除数组最后一个元素

        
参数: 没有

        
返回值: 返回删除的值

.

(5)、Array.prototype.shift()

        
语法: arr.shift()

        
用法: 删除数组第一个元素

        
参数: 没有

        
返回值: 返回删除的值

.

(6)、Array.prototype.slice( startIndex, endIndex )

        
语法: arr.slice( startIndex, endIndex )

        
用法: 截取数组中某一个片段的元素

        
参数: 起点和终点索引位置,算头不算尾(猜中了开头却没猜中结尾)。

        
        
如果参数为负,则倒着数;省略第二个参数,则从索引值到尾;

        
返回值: 返回一个新数组。元素组不变

.

(7)、Array.prototype.splice( index, howmany, item1, item2….. )

        
语法: arr.splice( index, howmany, item1, item2..... )

        
用法: 从索引处,删除howmany个元素,并加入后面的元素

        
参数: index(必选),howmany(必须),item(可选)

        
返回值: 在原数组上改造。如果删除了元素,则返回删除的数组

.

(8)、Array.prototype.sort( callback )

        
语法: arr.sort( callback )

        
用法: 将数组的元素,按着某个方式排序

        
参数: callback(可选)。如果没有参数,则按着 ASCII排序;提供了函数,则依照函数的方法排序

        
返回值: 在原数组上改造。

arr.sort(function(a,b) {    //a,b泛指数组两个元素
    return a-b;     // 负数:a前b后;正数:a后b前; 0,正常顺序
})


//依据某种属性排序
var arr = [[1,2],[3,4,5],[6,7,8,9]];
arr.sort(function(a, b) {
    return b.length - a.length;
})
console.log(arr);       //[[6, 7, 8, 9],[3, 4, 5],[1, 2]]


 .

(9)、Array.prototype.reverse( )

        
语法: `arr.reverse( )

        
用法: 反转数组的元素

        
参数:

        
返回值: 在原数组上改造。

 .

(9)、Array.prototype.indexOf( searchValue, startIndex )

        
语法: `arr.indexOf( searchValue, startIndex )

        
用法: 寻找值首次出现位置,从startIndex往后找

        
参数: searchValue(必选),startIndex(可选),省略从0开始

        
返回值: 返回寻找值首次出现位置,如果没找到,返回-1

 .

(10)、Array.prototype.map( callback )

        
语法: `arr.map( function( curValue[, index, array]){}[, thisArg] )

        
用法: 将数组的每个元素传入回调函数,处理

        
参数: curValue(必选),其它都可选;

                    
curValue:当前元素;

                    
index:当前元素索引;

                    
array:当前元素来源的数组;

                    
this:执行回调函数的this值;

        
返回值: 返回一个新数组,数组中的元素为原始数组元素调用回调函数处理后的值

 .

(11)、Array.prototype.forEach( callback )

        
语法: `arr.forEach( function(curValue[, index, array]){}[, thisArg] )

        
用法: 将数组的每个元素传入回调函数

        
参数: curValue(必选),其它都可选;

        
返回值: 没有明确返回值,只是遍历数组每个元素,并相应的处理

 .

(12)、Array.prototype.some( callback )

        
语法: `arr.some( function(curValue[, index, array]){}[, thisArg] )

        
用法: 检测数组元素是否==有==满足指定条件(callback提供)

        
参数: curValue(必选),其它都可选;

        
返回值: 返回boolean

 .

(13)、Array.prototype.every( callback )

        
语法: `arr.every( function(curValue[, index, array]){}[, thisArg] )

        
用法: 检测数组元素是否==所有都==满足指定条件(callback提供)

        
参数: curValue(必选),其它都可选;

        
返回值: 返回boolean

.

(14)、Array.prototype.filter( callback )

        
语法: `arr.filter( function(curValue[, index, array]){}[, thisArg] )

        
用法: 选择符合指定条件(callback提供)的元素构成的数组

        
参数: curValue(必选),其它都可选;

        
返回值: 返回符合条件元素构成的新数组

.

(15)、Array.prototype.find( callback )

        
语法: `arr.find( function(curValue[, index, array]){}[, thisArg] )

        
用法: 选择符合指定条件(callback提供)的第一个元素

        
参数: curValue(必选),其它都可选;

        
返回值: 返回第一个符合条件的元素

.

(16)、Array.prototype.fill( fillValue, startIndex, endIndex )

        
语法: `arr.fill( fillValue, startIndex, endIndex )

        
用法: 用指定元素填充数组的元素

        
参数: fillValue(必选)

        
返回值: 在原数组上改造

.

(17)、Array.prototype.reduce( callback )

        
语法: `arr.reduce( function( ==accumulator==, curValue, index, arr )[, ==initialValue==])

        
用法: 将数组每个元素都调用callback,执行时用到上一次回调结果,最后返回一个值,有累加的效果

        
参数: accumulator(必选):上一次调用回调返回值,或initialValue;

                
initialValue(可选): 第一次调用时,有initialValue,accumulator为initialValue,curValue为数组第一个元素;没有initialValue,accumulator为数组第一个元素,curValue数组第二个元素

        
返回值: 在原数组上改造

.

(18)、Array.prototype.copyWithin( target, startIndex, endIndex )

        
语法: `arr.copyWithin( target, startIndex, endIndex )

        
用法: 复制数组中指定值到指定位置

        
参数: target:目标位置;startIndex–endIndex为复制的部分值,这个endIndex需要考虑target位置,以target位置为主

        
返回值: 在原数组上改造

format_list_numbered

(无)

  1. 1. (1)、Array.prototype.join( separator )
  2. 2. (2)、Array.prototype.push( elems)
  3. 3. (3)、Array.prototype.unshift( elems)
  4. 4. (4)、Array.prototype.pop()
  5. 5. (5)、Array.prototype.shift()
  6. 6. (6)、Array.prototype.slice( startIndex, endIndex )
  7. 7. (7)、Array.prototype.splice( index, howmany, item1, item2….. )
  8. 8. (8)、Array.prototype.sort( callback )
  9. 9. (9)、Array.prototype.reverse( )
  10. 10. (9)、Array.prototype.indexOf( searchValue, startIndex )
  11. 11. (10)、Array.prototype.map( callback )
  12. 12. (11)、Array.prototype.forEach( callback )
  13. 13. (12)、Array.prototype.some( callback )
  14. 14. (13)、Array.prototype.every( callback )
  15. 15. (14)、Array.prototype.filter( callback )
  16. 16. (15)、Array.prototype.find( callback )
  17. 17. (16)、Array.prototype.fill( fillValue, startIndex, endIndex )
  18. 18. (17)、Array.prototype.reduce( callback )
  19. 19. (18)、Array.prototype.copyWithin( target, startIndex, endIndex )
vertical_align_top

Copyright © 2017 每天寻求一点变化

Powered by Hexo & Theme - Vateral