javascript数组的内置方法详解
1.Array.at()
功能:接受一个整数值并返回该索引处的项目,允许正整数和负整数。负整数从数组中的最后一项开始计数。
语法:Array.at(index)
参数:index:要返回的数组元素的索引(位置)。当传递一个负索引时,支持从数组末尾开始相对索引;即,如果使用负数,将通过从数组末尾开始倒数来找到返回的元素。
返回值:数组中与给定索引匹配的元素。undefined如果找不到给定的索引,则返回
<script type="text/javascript">
var arr = [1,2,3,4,5];
var newarr = arr.at(-1);
console.log(newarr);// 5
var newarr = arr.at(3);
console.log(newarr);// 4
</script>
2. Array.copyWithin()
功能:浅复制数组的一部分到同一数组中的另一个位置,并返回它,不会改变原数组的长度。
语法:arr.copyWithin(target[, start[, end]])
参数:
target:
0 为基底的索引,复制序列到该位置。如果是负数,target 将从末尾开始计算。
如果 target 大于等于 arr.length,将会不发生拷贝。如果 target 在 start 之后,复制的序列将被 修改以符合 arr.length。
start:
0 为基底的索引,开始复制元素的起始位置。如果是负数,start 将从末尾开始计算。
如果 start 被忽略,copyWithin 将会从0开始复制。
end:
0 为基底的索引,开始复制元素的结束位置。copyWithin 将会拷贝到该位置,但不包括 end 这 个位置的元素。如果是负数, end 将从末尾开始计算。
如果 end 被忽略,copyWithin 方法将会一直复制至数组结尾(默认为 arr.length)
<script type="text/javascript">
var arr = [1,2,3,4,5];
var arr2= arr.copyWithin(-2)
console.log(arr2); // [1, 2, 3, 1, 2]
var arr3= arr.copyWithin(0, 3)
console.log(arr3); // [4, 5, 3, 4, 5]
var arr4= arr.copyWithin(0, 3, 4)
console.log(arr4); // [4, 2, 3, 4, 5]
var arr5= arr.copyWithin(-2, -3, -1)
console.log(arr5); // [1, 2, 3, 3, 4]
</script>
3. Array.entries()
功能:返回一个新的Array Iterator对象,该对象包含数组中每个索引的键/值对。
语法:arr.entries()
返回值:一个新的 Array 迭代器对象。Array Iterator是对象,它的原型(__proto__:Array Iterator)上有一个next方法,可用用于遍历迭代器取得原数组的[key,value]。
<script type="text/javascript">
var array1 = ['a', 'b', 'c'];
var iterator1 = array1.entries();
console.log(iterator1.next().value);
// expected output: Array [0, "a"]
console.log(iterator1.next().value);
// expected output: Array [1, "b"]
</script>
4. Array.fill()
功能:用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。不包括终止索引。
语法:arr.fill(target[, start[, end]])
参数:
- value:用来填充数组元素的值。
- start :可选,起始索引,默认值为0。
- end :可选,终止索引,默认值为 this.length。
返回值:修改后的数组
<script type="text/javascript">
var array1 = [1, 2, 3, 4];
// fill with 0 from position 2 until position 4
console.log(array1.fill(0, 2, 4));
// expected output: [1, 2, 0, 0]
// fill with 5 from position 1
console.log(array1.fill(5, 1));
// expected output: [1, 5, 5, 5]
console.log(array1.fill(6));
// expected output: [6, 6, 6, 6]
</script>
5.find()
功能:返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。
语法:arr.find(callback[, thisArg])
参数:
- callback:在数组每一项上执行的函数,接收 3 个参数:
- element:当前遍历到的元素。
- index:可选,当前遍历到的索引。
- array:可选,数组本身。
- thisArg可选,执行回调时用作this 的对象。
返回值:数组中第一个满足所提供测试函数的元素的值,否则返回 undefined。
<script type="text/javascript">
var array1 = [5, 12, 8, 130, 44];
var found = array1.find(element => element > 10);
console.log(found); // 12
</script>
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341