1.常见的一些数组操作
常见的一些数组操作
.push : 添加在数组的尾部;返回添加后的数组的长度,原数组发生改变
.pop : 尾部删除一个元素,返回这个被删除的元素,原数组发生改变。
.unshift : 添加在数组的头部;返回添加后的数组的长度,原数组发生改变。
.shift : 头部删除一个元素,返回这个被删除的元素,原数组发生改变。
.slice : 切片,若一个参数,从该索引开始截取,直至结束,若两个参数,则到第二个结束,原数组不改变。
.splice : 切片,第一个参数表示开始截取的索引位,第二个参数表示截取的长度,返回截取的 数组,原数组改变;
三个或者更多参数,第三个及以后的参数表示要从截取位插入的值。
2.常见的迭代器操作
在codecademy中学到的一些迭代方法,可以在这里查询这些迭代器的文档。
在这一课中,你学到了许多有用的方法,还学会了如何使用 Mozilla Developer Network 中的 JavaScript 文档来发现和理解其他方法。让我们回顾一下
.forEach()用于对数组中的每个元素执行相同的代码,但不会改变数组,并且返回未定义的结果。
.map() 对数组中的每个元素执行相同的代码,并返回一个包含更新元素的新数组。
.filter()(过滤)检查数组中的每个元素是否符合特定条件,并返回一个新数组,其中包含符合条件的元素。
.findIndex() 返回数组中满足回调函数条件的第一个元素的索引。如果数组中没有元素满足条件,则返回-1。
.reduce()遍历数组,获取元素的值并返回单个值。
所有迭代器方法都需要一个回调函数,它可以是一个预定义函数、一个函数表达式或一个箭头函数。
您可以访问 Mozilla Developer Network 了解更多有关迭代器方法(以及 JavaScript 所有其他部分!)的信息。
3.练习题代码:
const cities = ['Orlando', 'Dubai', 'Edinburgh', 'Chennai', 'Accra', 'Denver', 'Eskisehir', 'Medellin', 'Yokohama'];
const nums = [1, 50, 75, 200, 350, 525, 1000];
// Choose a method that will return undefined
cities.forEach(city => console.log('Have you visited ' + city + '?'));
// Choose a method that will return a new array
const longCities = cities.filter(city => city.length > 7);
// Choose a method that will return a single value
const word = cities.reduce((acc, currVal) => {
return acc + currVal[0]
}, "C");
console.log(word)
// Choose a method that will return a new array
const smallerNums = nums.map(num => num - 5);
// Choose a method that will return a boolean value
nums.some(num => num < 0);