数组的内置方法3

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>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值