【问题标题】:Delete 2nd to last item array [duplicate]删除第二个到最后一个项目数组[重复]
【发布时间】:2020-08-17 07:48:28
【问题描述】:

我正在尝试删除数组中倒数第二个项目。使用删除会使我的索引混乱?

使用delete myArr[15];获取此信息

【问题讨论】:

  • 用恰当的例子描述你的问题。
  • 您可以将最后一个元素的值复制到倒数第二个,然后删除数组中的最后一个元素
  • 我不确定你的意思。你是什​​么意思删除它但不把数组乱序?此外,您通常使用“splice”指令在 JavaScript 中删除数组中的某些内容。我什至不知道 JavaScript 有“删除”关键字。

标签: javascript arrays


【解决方案1】:

Delete 是 Object 的一种方法,它会删除 Object 的键(以及值)。在数组中,键是索引。

对 Array 执行此操作的一种简单方法是:

myArr.splice(myArr.length - 2, 1);

或者更好:

myArr = [...myArr.slice(0, - 2), ...myArr.slice(-1)]

【讨论】:

    【解决方案2】:

    如果您需要从数组中的第二个值开始删除,创建一个只有第一个值的新数组不是更好吗?

    这是一个例子:

    let anArray = [
      'oneValue',
      'twoValue',
      'threeValue',
      'ecc'
    ];
    
    console.log('anArray', anArray);
    
    let aNewArray = [anArray[0]];
    
    console.log('aNewArray', aNewArray);

    【讨论】:

      【解决方案3】:

      您可以改用splice 方法。这是一个例子:

      let arr = [1,2,3];
      arr.splice(-2,1);
      console.log(arr);

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-08-08
        • 2020-09-19
        • 2020-03-25
        • 1970-01-01
        • 2018-03-15
        • 2023-03-31
        • 1970-01-01
        • 2021-10-21
        相关资源
        最近更新 更多