如何覆盖(或取消设置然后设置)数组?好像"array = new_array"
似乎不起作用。
答案 0 :(得分:12)
要创建一个空数组以分配给变量,可以使用Array构造函数:
array = new Array();
或者您可以使用空数组文字:
array = [];
如果您对一个数组有多个引用,那么您必须清空实际的数组对象而不是替换对它的引用,您可以这样做:
array.splice(0, array.length);
答案 1 :(得分:1)
这应该有用。
array1 = array2;
如果没有,请提供更多详情。
答案 2 :(得分:1)
清除数组
http://2ality.com/2012/12/clear-array.html
let myArray = [ 1, 2, 3, 4];
myArray = [];
myArray.length = 0;
答案 3 :(得分:0)
我不确定你要做什么,但有几种方法可以重置数组。
您可以遍历现有数组并将每个索引设置为null(或空字符串或0或您认为重置的任何值):
for(var i = 0; i < arr.length; i++) {
arr[i] = null;
}
您也可以只更新对象的新实例的现有引用:
arr = [];
答案 4 :(得分:0)
使用Slice()
像这样-> array = new_array.slice(0);
答案 5 :(得分:-1)
sms.original = eval('(' + data + ')');
sms.messages = sms.original;
sms.original 成为一个对象,然后 sms.messages 变成 sms.original (我只是希望它们具有相同的值)。这些对象包含一个名为 items 的数组,它在 sms.original 对象中保持静态,但当我更改了 sms.messages 时对象也发生了变化。解决方案很简单:
sms.original = eval('(' + data + ')');
sms.messages = eval('(' + data + ')');
很抱歉打扰你,我应该详细说明,但代码分为多个文件和函数。无论如何,谢谢你们,现在Guffa的拼接技术对我有效。