让我们将定义视为
function Stone() {
this.x = 0;
this.y = 400;
};
我实例化一个对象
var st = new Stone;
var ll = [st];
var remov = ll.splice(0, 1);
alert(remov.x);
此处删除从列表中删除对象,但所有属性都设置为undefined。警报将提醒“未定义”。为什么会这样?
答案 0 :(得分:6)
您需要访问当前项目。 Splice
可以返回多个项目数组,如果它有一个项目,它仍然会返回一个包含一个项目的数组。所以你需要得到那个项目并访问它的属性。有关splice
的更多信息,请参阅documentation。
您可以记录remov
并查看其中包含的内容。
function Stone() {
this.x = 0;
this.y = 400;
};
var st = new Stone;
var ll = [st];
var remov = ll.splice(0, 1);
console.log(remov);
alert(remov[0].x);