push() 方法(在数组结尾处)向数组添加一个新的元素
返回新数组的长度
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.push("Kiwi"); // x 的值是 5
splice() 方法可用于向数组添加新项
第一个参数(2)定义了应添加新元素的位置(拼接)
第二个参数(0)定义了向后删除多少个元素
方法返回一个包含已删除项的数组
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.splice(2, 1, "Lemon", "Kiwi"); // 这两个元素会插入Orange之后;删掉Apple,并赋给x
巧用:删除指定位置的元素
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var deleteIdx=1
var x = fruits.splice(1, 1); // Orange将被删除,并赋给x
concat() 方法通过合并(连接)现有数组来创建一个新数组
不会更改现有数组。它总是返回一个新数组
可以使用任意数量的数组参数
var arr1 = ["Cecilie", "Lone"];
var arr2 = ["Emil", "Tobias", "Linus"];
var arr3 = ["Robin", "Morgan"];
var myChildren = arr1.concat(arr2, arr3); // 将arr1、arr2 与 arr3 连接在一起
forEach
适合操作对象类型
列表的元素是对象类型
let oldList = [
{'age': 1},
{'age': 2},
{'age': 3}]
oldList.forEach(item => {
item.age++
}) // 没有返回值
console.log(oldList) // 2, 3, 4
列表的对象是基本类型
let oldList = [1, 2, 3]
oldList.forEach((item, idx, arr) => {
arr[idx]++
}) // 没有返回值
console.log(oldList)
// 0: {age: 2}
// 1: {age: 3}
// 2: {age: 4}
map
适合取对象类型的某一列(外加一些操作);适合操作基本类型(比arry[idx]简洁一点)
列表的元素是对象类型
let oldList = [
{'age': 1},
{'age': 2},
{'age': 3}]
let newList = oldList.map(item => {
return item.age + 1
})
console.log(oldList) // 不变
console.log(newList) // 2,3,4
列表的对象是基本类型
let oldList = [1, 2, 3]
let newList = oldList.map(item => {
return item+1
})
console.log(newList) //2,3,4