这有效:
var y=["Banana", "Orange", "Apple", "Mango"];
y.splice(0,1);
document.write(y);
它给出(可预测):Orange,Apple,Mango
这也没关系:
var z={};
z[32]="Help";
z[14]="Go";
但这不起作用:
z.splice(32,1);
Firebug中的错误消息是:
错误:z.splice不是函数...
显然我不了解一条规则。它是什么,以及如何拼出类似z [32]的东西?
感谢。
答案 0 :(得分:3)
y是一个数组,z是一个对象。
您不能在对象中使用数组原型中的函数。
var z=[];
z[32]="Help";
z[14]="Go";
z.splice(32,1);
工作正常。
答案 1 :(得分:3)
您将z
声明为对象。 splice
是一个数组函数。尝试:
var z = [];
答案 2 :(得分:3)
要从对象中删除元素,请使用:
var z={};
z[32]="Help";
z[14]="Go";
delete z[32];
否则你将需要使用数组。