我正在制作一款游戏,要求我从数组中取出一个对象并将其放入另一个数组中。
a = obj;
array1.splice(a);
array2.push(a);
(a已经在array1中)
这就是我需要发生的事情。
我不是专家所以请深入解释你的答案:)
任何帮助都会有很大帮助!
答案 0 :(得分:2)
Javascript Array Splice()方法的工作原理如下......
方法Array.splice(索引,的howmany)
需要删除项目的索引号,要删除的项目数量,以及这两项是必需的。
有关详情,请点击以下链接:http://www.w3schools.com/jsref/jsref_splice.asp
所以,你的问题可以解决如下......
a = obj;
var index = array1.indexOf(a);
array1.splice(index,1);
array2.push(a);
答案 1 :(得分:1)
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']
对于您的主题,您希望将元素复制到其他数组。
您有多个解决方案:
array.push(months.slice(2, 3)[0]);
[ ... 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