Javascript(动态)插入数组,然后将所有元素移动到+1下面

标签 javascript html arrays

没有真正找到针对 Javascript 的解决方案。 我需要的;我想将一个元素插入到数组中,但并不真正覆盖该元素。而是一个“动态”插入。因此插入元素,然后将它下面的所有元素移动 +1 索引。

例如:

I have an array "14S" "16S" "19S".
I know want to insert "15S".
The resulting array: "14S" "15S" "16S" "19S"

我尝试了什么:

  fullName = "15S"
  low = 5;
  cardsS[low] = fullName;
  for (var i = low; i < cardsS.length; i++) {
      cardsS[i + 1] = cardsS[i];
  }

最佳答案

如果您知道要插入元素的位置:

使用 splice方法。它很便宜,而且完全按照您的意愿工作。您还可以一次插入多个元素:

var strings = ["14S", "16S", "19S"];
strings.splice(1,0,"15S");

结果

"14S" "15S" "16S" "19S"

如果您不希望数组以特定方式排序,您也应该使用此解决方案。

如果您不知道要插入元素的位置:

您将不得不求助于 push/sort组合,提供您自己的排序算法(除非标准排序就足够了)

var strings = ["14S", "16S", "19S"];
strings.push("15S");
strings.sort(function(a, b){
    if (a is less than b by some ordering criterion)
        return -1;
    if (a is greater than b by the ordering criterion)
        return 1;
    // a must be equal to b
    return 0;
});

关于Javascript(动态)插入数组,然后将所有元素移动到+1下面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20468751/

相关文章:

javascript - Laravel和Flutter通知系统

HTML 全 Angular 表格

java - 如何查找字符串中字符之间的最长距离

arrays - PostgreSQL json和数组处理

javascript - 将每个数组值与 ajax 传递的数组分开——php

javascript - MVC - 在ajax调用中操作Jquery插件属性

javascript - jQuery 选择全部而不是某些字段

javascript - 使用 Python 提交带有 javascript 目标的表单

javascript - 如何使用 CSS 和 Javascript 滚动/跟随菜单?

javascript - Bootstrap : unable to make the div to be scrollable