是否使用JavaScript从对象中的数组中删除值?

是否使用JavaScript从对象中的数组中删除值?,javascript,arrays,splice,Javascript,Arrays,Splice,我的代码有什么问题?为什么“deleteMessage(index)”功能不删除任何消息 var facebookProfile = { messages: ["hi", "bye", "test"], deleteMessage: function deleteMessage(index) { facebookProfile.messages.splice(index); }, }; 您需要指定要拼接多少项(1我猜假设名称是单数),否则它将从索引开始的最后删除所有消息

我的代码有什么问题?为什么“deleteMessage(index)”功能不删除任何消息

var facebookProfile = {
  messages: ["hi", "bye", "test"],
  deleteMessage: function deleteMessage(index) {
     facebookProfile.messages.splice(index);
  },
};

您需要指定要拼接多少项(1我猜假设名称是单数),否则它将从索引开始的最后删除所有消息

var facebookProfile={
信息:[“你好”,“再见”,“测试”],
deleteMessage:函数deleteMessage(索引){
facebookProfile.messages.splice(索引1);
},
}
facebookProfile.deleteMessage(1)
console.log(facebookProfile.messages)
facebookProfile.deleteMessage(1)

console.log(facebookProfile.messages)
否?您的方法应该删除从
索引开始的所有消息。如何调用该方法?如何调用此代码?Splice不会修改源数组。它返回一个新数组。见documentation@Amy哦,是的。你是说切片?因为OP有一个splice,它会改变数组。@Amy:
splice()
方法通过删除现有元素和/或添加新元素来更改数组的内容。没有发现任何错误。。。嗯,有一件事。从语义上讲,最好使用
this.messages.splice(…)
。但这仍然有效。