js原生-翻转数组

需求:给定一个已知数组,进行对数组的翻转

var oldArr=["刘备","关羽","张飞"];
第一种思路:定义一个新的数组,将原来数组中的元素从后往前添加进新数组
1.从后往前进行翻转
var newArr[];
//i取最大索引值,并且减去1,使得i从最后一位开始循环
for(var i=oldArr.length-1;i>=0;i--){
  newArr[newArr.length]=oldArr[i];
 }
2.从前往后进行翻转
var newArr[];
 for(var i=0;i<oldArr.length;i++){
  //将原来数组的长度减去1减去这个元素的索引值
 //将原来数组处理后赋值给新的数组
 //并且将新数组的长度设置为原来数组存入多少就设置为它的长度
 newArr[newArr.length]=oldArr[oldArr.length-1-i];
}
第二种思路:在原数组的基础上翻转数组
 for(var i=0;i<arr.length/2;i++){
 var temp=arr[i];
 arr[i]=arr[arr.length-1-i];
 arr[arr.length-1-i]=temp;
 }
在第二种思路的时候,我因为把arr[arr.length-1-i]赋值给了arr[i],导致只将后半部分的项翻转到了前半部分,而前半部分的项则被覆盖掉
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值