javascript - 如何将 "push' 一个新项添加到数组的中间?

标签 javascript

<分区>

我刚刚完成第 1 部分,并注意到没有涉及如何将项目推送到数组的特定位置的方法。例如,如果我想让数组显示

var suits = ["hearts","clubs","Brooks Brothers", "diamonds","spades"]

我如何才能将“Brooks Brothers”插入阵列套装的位置 [2],并将其余 1 向下移动? javascript 中是否有类似于 push 的内置函数可以让我执行此操作?

我想我总是可以,但有一些困难:

function add (item, position){
    var length = suits.length;
    for(i = length -1; i >= position; i--){
        suits[length] = suits[i];
        length--;
    };
    suits[position] = item;
};

add("Brooks Brothers",2) //to add it to the middle

最佳答案

在 JavaScript 中没有内置函数,但您可以使用 splice 简单地做到这一点

var suits = ["hearts", "clubs", "Brooks Brothers", "diamonds", "spades"];

suits.splice(2, 0, "Brooks Brothers");

console.log(suits);

这会将项目 X 插入数组花色的索引 2,["hearts", "clubs", "Brooks Brothers", "Brooks Brothers", "diamonds", "spades"]

语法

<array-name>.splice(<position-to-insert-items>,0,<item-1>,<item-2>,..,<item-n>)

Always pass second second argument as 0, because we don't want to delete any item from the array while splicing.

关于javascript - 如何将 "push' 一个新项添加到数组的中间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48145421/

相关文章:

javascript - Angular - 如何使用 $http 使用 HTTPS

javascript - 如何在Jquery中迭代Table来更改内容

javascript - Firefox 网站如何突出显示导航栏上的项目?

javascript - Openlayers - 带有 svg 元素的 SVG 图层

javascript - React ref 组件不暴露方法

javascript - 禁用页面上的(大多数)事件?

javascript - Bootstrap 动画未按预期工作

javascript - 在 Facebook 上分享数据 uri 图片

javascript - 如何从 JavaScript 中的字符串列表中删除元音字母

javascript - 从 javascript 中的自定义属性中选择一个值