我有一个包含自定义索引的javascript,我创建它们是这样的:
var rand = event.timeStamp; //jquery on click event object
freeze_array[rand] = month + ',' + model_name + ',' + activity;
要删除上述元素我有:
freeze_array.splice(rand, 1);
但这并没有删除元素,因为我可以在我的firebug dom对象查看器中看到它。以下是该数组的示例:
我的索引采用以下形式:1283519490632
- 太长而不能成为splice方法所需的整数?
感谢大家的帮助
答案 0 :(得分:1)
正如您所提到的,index参数必须是整数。也许您可以使用包含索引的对象,如下所示:
var lastIndex=0; // that shall be global...
var pointer = {};
....
pointer[rand] = lastIndex;
++lastIndex;
然后按如下方式使用:
freeze_array = freeze_array.splice(pointer[rand], 1);
答案 1 :(得分:0)
是索引必须是整数。您的值对于整数来说太大了。 见w3schools
索引:必填。 整数表示 指定在什么位置 添加/删除元素
答案 2 :(得分:-1)
试试这个:
delete freeze_array[ rand ];