JS、Array-Methods

push

提示:push() 方法将指定的元素添加到数组的末尾,并返回新的数组长度。
理解:在数组的末尾添加

例如:

const animals = ['pigs', 'goats', 'sheep'];

const count = animals.push('cows');
console.log(count); // 4

效果图:
在这里插入图片描述

unshift

提示:unshift() 方法将指定元素添加到数组的开头,并返回数组的新长度。
理解:在数组的开头添加

例如:

const array1 = [1, 2, 3];

console.log(array1.unshift(4, 5)); // 5

效果图:
在这里插入图片描述

pop

提示:pop() 方法从数组中删除最后一个元素,并返回该元素的值。此方法会更改数组的长度。
理解:去除数组最后一个元素

例如:

const plants = ['broccoli', 'cauliflower', 'cabbage', 'kale', 'tomato'];

console.log(plants.pop()); // tomato

效果图:
在这里插入图片描述

shift

提示:shift() 方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。理解:删除数组的第一个

例如:

const array1 = [1, 2, 3];

const firstElement = array1.shift();

console.log(array1); // [2, 3]

效果图:
在这里插入图片描述

splice

提示:splice() 方法通过移除或者替换已存在的元素和/或添加新元素就地改变一个数组的内容。
理解:删除或替换存在的

例如:

const months = ['Jan', 'March', 'April', 'June'];
months.splice(1, 0, 'Feb');
console.log(months); // Array ["Jan", "Feb", "March", "April", "June"]

效果图:
在这里插入图片描述

forEach

提示:forEach() 方法对数组的每个元素执行一次给定的函数。
理解:遍历,每次是数组对应的值

例如:

const array1 = ['a', 'b', 'c'];
array1.forEach((element) => console.log(element)); // a b c

效果图:
在这里插入图片描述

filter

提示:filter() 方法创建给定数组一部分的浅拷贝,其包含通过所提供函数实现的测试的所有元素。
理解:过滤符合条件的返回

例如:

const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];
const result = words.filter((word) => word.length > 6);
console.log(result); //  ['exuberant', 'destruction', 'present']

效果图:
在这里插入图片描述

join

提示:join() 方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串,用逗号或指定的分隔符字符串分隔。如果数组只有一个元素,那么将返回该元素而不使用分隔符。
理解:将数组转换为字符串,默认是 ‘,’ 号连接,可以指定连接符

例如:

const elements = ['Fire', 'Air', 'Water'];

console.log(elements.join()); // Fire,Air,Water

console.log(elements.join('')); // FireAirWater

console.log(elements.join('-')); // Fire-Air-Water

效果图:
在这里插入图片描述

reverse

提示:reverse() 方法就地反转数组中的元素,并返回同一数组的引用。数组的第一个元素会变成最后一个,数组的最后一个元素变成第一个。换句话说,数组中的元素顺序将被翻转,变为与之前相反的方向。
理解:颠倒数组顺序

例如:

const array1 = ['one', 'two', 'three'];
console.log('array1:', array1); // Array ["one", "two", "three"]

const reversed = array1.reverse();
console.log('reversed:', reversed); // Array ["three", "two", "one"]

效果图:
在这里插入图片描述

findIndex

提示:findIndex() 方法返回数组中满足提供的测试函数的第一个元素的索引。若没有找到对应元素则返回 -1。
理解:返回匹配元素的第一个索引,不存在返回 -1

例如:

const array1 = [5, 12, 8, 130, 44];

const isLargeNumber = (element) => element > 13;

console.log(array1.findIndex(isLargeNumber)); // 3

效果图:
在这里插入图片描述

indexOf

提示:indexOf() 方法返回数组中第一次出现给定元素的下标,如果不存在则返回 -1。
理解:匹配元素返回第一次出现的索引,不存在返回 -1

例如:

const beasts = ['ant', 'bison', 'camel', 'duck', 'bison'];

console.log(beasts.indexOf('bison')); // 1

console.log(beasts.indexOf('bison', 2)); // 从下标 2 开始 4

console.log(beasts.indexOf('giraffe')); // 没有返回 -1

效果图:
在这里插入图片描述

concat

提示:concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
理解:合并数组

例如:

const chars = ['a', 'b', 'c'];
const chars2 = ['d', 'e', 'f'];
const chars3 = chars.concat(chars2);
console.log(chars3); // Array ["a", "b", "c", "d", "e", "f"]

效果图:
在这里插入图片描述

find

提示:find() 方法返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。
理解:匹配元素返回第一个值

例如:

const array1 = [5, 12, 8, 130, 44];

const found = array1.find((element) => element > 10);

console.log(found); // 12

效果图:
在这里插入图片描述

some

提示:some() 方法测试数组中是否至少有一个元素通过了由提供的函数实现的测试。如果在数组中找到一个元素使得提供的函数返回 true,则返回 true;否则返回 false。它不会修改数组。
理解:只有有大于等一1个匹配就返回 true,否则 false

例如:

const array = [1, 2, 3, 4, 5];

const even = (element) => element % 2 === 0;

console.log(array.some(even)); // true

效果图:
在这里插入图片描述

every

提示:every() 方法测试一个数组内的所有元素是否都能通过指定函数的测试。它返回一个布尔值。
理解:每一个都匹配的话返回 true,否则 false

例如:

const isBelowThreshold = (currentValue) => currentValue < 40;

const array1 = [1, 30, 39, 29, 10, 13];

console.log(array1.every(isBelowThreshold)); // true

效果图:
在这里插入图片描述

includes

提示:includes() 方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回 false。
理解:判断是否包含,返回 boolean

例如:

const array1 = [1, 2, 3];

console.log(array1.includes(2)); // true

const pets = ['cat', 'dog', 'bat'];

console.log(pets.includes('cat')); // true

console.log(pets.includes('at')); // false

效果图:
在这里插入图片描述

slice

提示:slice() 方法返回一个新的数组对象,这一对象是一个由 start 和 end 决定的原数组的浅拷贝(包括 start,不包括 end),其中 start 和 end 代表了数组元素的索引。原始数组不会被改变。
理解:分割,浅拷贝 (会影响操作对象) ,可指定索引 (start, end)

例如:

const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];

console.log(animals.slice(2)); //  Array ["camel", "duck", "elephant"]

效果图:
在这里插入图片描述

map

提示:map() 方法创建一个新数组,这个新数组由原数组中的每个元素都调用一次提供的函数后的返回值组成。
理解:返回一个数组,数组里面存放调用的返回值组成,也就是用到啥数组存啥

例如:

const array1 = [1, 4, 9, 16];

const map1 = array1.map((x) => x * 2); // 每个值 * 2

console.log(map1); // Array [2, 8, 18, 32]

效果图:
在这里插入图片描述

reduce

提示:reduce() 方法对数组中的每个元素按序执行一个提供的 reducer 函数,每一次运行 reducer 会将先前元素的计算结果作为参数传入,最后将其结果汇总为单个返回值。
理解:可以用来判断最大值,最小值;第一个参数是初始值,第二个参数是数组指针对应的值,逐步增加,第四个参数指定初始值的大小,第三个来操作可以用于判断,来对第一个参数初始值加工

例如:

const array1 = [1, 2, 3, 4];

// 0 + 1 + 2 + 3 + 4
const initialValue = 0;
const sumWithInitial = array1.reduce((accumulator, currentValue) => accumulator + currentValue, initialValue);

console.log(sumWithInitial); // 10

效果图:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱学习的 W

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值