Javascript 拼接方法不删除阵列
我有一个具有自定义索引的javascript,我创建了如下索引:Javascript 拼接方法不删除阵列,javascript,jquery,Javascript,Jquery,我有一个具有自定义索引的javascript,我创建了如下索引: var rand = event.timeStamp; //jquery on click event object freeze_array[rand] = month + ',' + model_name + ',' + activity; 要删除上述元素,我有以下内容: freeze_array.splice(rand, 1); 但这并没有删除元素,因为我可以在firebug dom对象查看器中看到它。以下是该阵列的
var rand = event.timeStamp; //jquery on click event object
freeze_array[rand] = month + ',' + model_name + ',' + activity;
要删除上述元素,我有以下内容:
freeze_array.splice(rand, 1);
但这并没有删除元素,因为我可以在firebug dom对象查看器中看到它。以下是该阵列的一个示例:
我的索引格式为:1283519490632
-太长,不能成为拼接方法所需的整数
谢谢大家的帮助试试这个:
delete freeze_array[ rand ];
正如您所提到的,index参数必须是整数。也许您可以使用包含索引的对象,如下所示:
var lastIndex=0; // that shall be global...
var pointer = {};
....
pointer[rand] = lastIndex;
++lastIndex;
freeze_array = freeze_array.splice(pointer[rand], 1);
然后按如下方式使用:
var lastIndex=0; // that shall be global...
var pointer = {};
....
pointer[rand] = lastIndex;
++lastIndex;
freeze_array = freeze_array.splice(pointer[rand], 1);
是,索引必须是整数。您的值对于整数来说太大。 看 索引:必选。一个整数 指定要在哪个位置执行操作 添加/删除元素
这会在数组中留下一个“洞”,这不是完全删除。我已经停止使用大量的数字,它可以工作。你的方法很好。