Array对象的方法

1. Array map()方法

定义: map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值
map()方***按照原数组元素的顺序进行一次处理元素
注意: map()不会改变原数组;map()不会对空数组进行检测

语法

array.map(function(currentValue,index,arr), thisValue)

参数说明


实例

/* 返回一个数组,数组中元素为原始数组的平方根 */
var numbers = [4,9,16,25];

function myFunction() {
   
   x = document.getElementById("demo")
   x.innerHTML = numbers.map(Math.sqrt);
}

/* 输出结果为: 2,3,4,5 */

2. JavaScript some()方法

定义: some() 方法用于检测数组中的元素是否满足指定条件(函数提供)
some() 方***依次执行数组的每个元素:

  • 如果有一个元素满足条件,则表达式返回true,剩余的元素不会再执行检测
  • 如果没有满足条件的元素,则返回false

注意: some() 不会对空数组进行检测,不会改变原数组

语法

array.some(function(currentValue,index,arr),thisValue)

参数说明

实例

/* 检测数组中是否有元素大于18 */
var ages = [3,10,18,20];
function checkAdult(age) {
   
  return age >= 18
}
function myFunction() {
   
   document.getElementById("demo").innerHTML = age.some(checkAdult);
}
// 输出结果: true

3. JavaScript shift() 方法

定义 shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值
注意: shift() 方法改变数组的长度;

语法

array.shift()

实例

var peoples = ["Rick","Motty","Tom","Jerry"];
peoples.shift() // "Rick"

//["Motty","Tom","Jerry"]

4. JavaScript pop()方法

定义: pop()方法用于删除数组的最后一个元素并返回删除的元素
注意:此方法改变数组的长度

语法

array.pop()

实例

var peoples = ["Rick","Motty","Tom","Jerry"];
peoples.pop() //"Jerry"

// ["Rick","Motty","Tom"]

5. JavaScript unshift() 方法

定义: unshift() 方法可向数组的开头添加一个或多个元素,并返回新的长度
注意: 该方法将改变数组的数目

语法:

array.unshift(item1,item2,…,itemX)

参数:

参数 描述
item1,item2, …, itemX 可选。向数组起始位置添加一个或者多个元素。

实例

 var peoples = ["Tom","Rick"]
 peoples.unshift("Jerry","Rick")  // 4

 console.log(peoples) // ["Jerry","Rick","Tom","Rick"]

6. JavaScript push() 方法

定义: push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度

注意: 新元素添加在数组的末尾,此方法改变数组的长度

语法

array.push(item1,item2, … , itemX)

参数值

参数 描述
item1, item2, …, itemX 必需。要添加到数组的元素。

返回值

类型 描述
Number 数组新长度

实例

var people = ["Jerry","Tom"]
people.push("Rick","Motty") //4
console.log(people) // ["Jerry","Tom","Rick","Motty"]

7. JavaScript includes() 方法

定义
includes() 方法判断数组中是否包含一个指定的值,如果是返回true,否则false

语法

arr.includes(searchElement)
arr.includes(searchElement, fromIndex)

参数说明

参数 描述
searchElement 必须,需要查找的元素值
fromIndex 可选,从该索引处开始查找searchElement;如果为负值,则按升序从 array.length + fromIndex 的索引开始搜索,默认为0

实例
fromIndex 大于等于数组长度
如果fromIndex 大于等于数组长度,则返回false,则数组不会被搜索

var cartoonArr = ['Jerry','Rick','Motty']

console.log(cartoonArr.includes('Rick',1));  // true
console.log(cartoonArr.includes('Rick',3));  // false

fromIndex 小于0
如果fromIndex 为负值,按升序从 arr.length + fromInedx 的索引开始搜素,计算出的索引将作为开始搜索searchElement的位置。如果计算出的索引小于0,则整个数组都会被搜索。

    var arr = ['a','b','c']
    // 当开始索引fromIndex 小于0,则按升序从 array.length + fromIndex 的索引开始搜索
    console.log(arr.includes('a', -1));  // false; 3 + (-1) = 2,从inedx=2索引开始搜索,所以为false
    console.log(arr.includes('a', -3));  // true; 3 + (-3) = 0,从inedx=0索引开始搜索,所以为false

8. JavaScript Array slice()方法

定义: slice()方法可从已有的数组中返回选定的元素
slice()方法不会改变原数组

语法:

array.slice(start, end)

参数说明

参数 描述
start 可选,规定从何处(数组下标)开始选取;如果为负数,则表示从原数组倒数第几个开始提取
end 可选,规定从何处(数组下标)结束选取(不包括结束位置元素);如果为负数,则表示在原数组的倒数第几个元素结束抽取

返回值

Type 描述
Array 返回一个新的数组,包括从start到end(不包括该元素)的array

实例

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];

var newArr = fruits.slice(1)  //["Orange", "Lemon", "Apple", "Mango"]
newArr = fruits.slice(1,3)  //["Orange", "Lemon"]
newArr = fruits.slice(-3) // ["Lemon", "Apple", "Mango"]