通过修改length长度为数组新增元素

  • 通过修改数组长度可以达到数组扩容目的。
  • 数组的length是可读可写的。

代码:

var arr = ['red', 'green', 'blue', 'pink'];
arr.length = 7;
console.log(arr);
console.log(arr[4]);
console.log(arr[5]);
console.log(arr[6]);

案例

1. 筛选数组

  • 要求:
    将数组中大于某个数的元素筛选出来
  • 代码:
 function filterData (arry,num) { 
     var newarry=new Array()
     for(var i=0;i<arry.length;i++){
      if(arry[i]>num){
          newarry[newarry.length]=arry[i]
      }
     }
     console.log(newarry)
     return newarry
  }
 var arry=[1,2,3,3,4,23,23,45,45,45]
 var result=filterData(arry,8)
 console.log(result)
  • 解释:
    将大于该数值num的元素存放到新数组中,其中newarry[newarry.length]=arry[i]就利用length属性为数组动态添加元素。

2. 删除指定数组元素

  • 描述:
    将数组中指定的元素都删除。
  • 思路:
    for循环遍历数组->将非指定元素存放到新数组中->返回新数组即删除指定元素的数组。
  • 代码:
function deleteArryData(arry,item){
        var newarry=new Array()
        for(var i=0;i<arry.length;i++){
            if(arry[i]!==item){
                newarry[newarry.length]=arry[i]
            }
        }
        return newarry
}
var arry=[4,5,3,2,6,7,0,2,0,31]
var result=deleteArryData(arry,0)
console.log(result);

3. 翻转数组的实现

  • 描述:
    将一个数组中的元素翻转。
  • 思路:
    将原数组中的元素从后往前存放到新数组中,最后新数组即为翻转的数组。
  • 代码:
 function getReserveArry (arry){
    var newarry=new Array()
    for(var i=0;i<arry.length;i++){
        newarry[newarry.length]=arry[arry.length-i-1]
    }
    return newarry
 }
var arry=[1,4,6,7,2,3,7,0]
var result=getReserveArry(arry)
console.log(result);
最后修改:2021 年 10 月 19 日
如果觉得我的文章对你有用,请随意赞赏