【问题标题】:JavaScript splice and place into another arrayJavaScript 拼接并放入另一个数组
【发布时间】:2013-10-24 22:03:35
【问题描述】:

我目前正在制作一个游戏,它需要我从一个数组中取出一个对象并将其放入另一个数组中。

a = obj;
array1.splice(a);
array2.push(a);

(a已经在array1中)

这几乎就是我需要发生的事情。

我不是专家,所以请深入解释您的答案。

【问题讨论】:

    标签: javascript arrays push splice


    【解决方案1】:

    Javascript Array Splice() 方法的工作原理如下...

    array.splice(索引,多少)

    需要移除item的索引号,移除多少item作为参数,这两个是必须的。

    更多信息您可以点击此链接:http://www.w3schools.com/jsref/jsref_splice.asp

    所以,您的问题可以通过以下方式解决...

    a = obj;
    var index = array1.indexOf(a);
    array1.splice(index,1);
    array2.push(a);
    

    【讨论】:

      【解决方案2】:

      splice(start, ?deleteCount) 函数用于获取数组中的一个或多个元素,并从数组中移除选中的元素。

      slice(?start, ?end) 切片检索选定元素而不更改数组。

      例如我有这个数组:

      const months = ['Jan', 'March', 'April', 'June'];
      
      let selectedElementsWithSlice = months.slice(2, 3);
      //["April"]
      // months = ['Jan', 'March', 'April', 'June']
      
      let selectedElements = months.splice(2, 1); // removed from array months
      //["April"]
      // months = ['Jan', 'March', 'June']
      

      对于您的主题,您希望将元素复制到其他数组。

      您有多个解决方案:

      1. 选择第一个元素(必要时检查是否包含)
      array.push(months.slice(2, 3)[0]);
      
      1. 对于所有选定的元素
      [ ... array, ... months.slice(2, 3) ]
      

      参考资料:

      拼接文档:https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Array/splice

      切片文档: https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Array/slice

      【讨论】:

        猜你喜欢
        • 2018-09-09
        • 2017-03-11
        • 1970-01-01
        • 2018-10-19
        • 2015-05-18
        • 2015-02-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多