【问题标题】:Removing the first element in an array without using array methods在不使用数组方法的情况下删除数组中的第一个元素
【发布时间】:2021-12-28 13:42:10
【问题描述】:

所以我有作业要求我从这样的数组中出列:

let arr = [1, 2, 3]

我唯一的问题是我被限制使用除 .length 方法之外的任何数组方法。

我尝试使用 delete 删除第一个元素,但我知道它不会调整数组并反映第一个元素的未定义:

function dequeue(){
  delete arr[0];
  console.log(arr)
}

非常感谢任何有关如何操作的帮助或建议。

【问题讨论】:

    标签: javascript arrays queue


    【解决方案1】:

    您可以使用解构赋值。 试试这个:

    const [firstElement, ...restOfTheArray] = yourArray;
    

    restOfTheArray 是删除了第一个元素的同一个数组。

    【讨论】:

      【解决方案2】:

      如果在您的情况下允许使用 .map

      array = array.map((elm,index,arr) => arr[index+1]);
      array.length--;
      

      【讨论】:

        【解决方案3】:

        假设您仍然可以使用带索引的赋值,您可以将所有项目复制到前一个索引并减少数组的长度。

        let array = [1, 2, 3];
        
        for (let i = 1; i < array.length; i++) array[i - 1] = array[i];
        
        array.length--;
        
        console.log(array);

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-11-10
          • 1970-01-01
          • 2019-04-04
          • 2013-09-05
          • 1970-01-01
          • 2019-10-05
          • 2013-10-23
          • 2019-02-16
          相关资源
          最近更新 更多