如何从JavaScript中的Array
中删除项目?
function restructureChatBoxes() {
align = 0;
for (x in chatBoxes) {
chatboxtitle = chatBoxes[x];
if ($("#chatbox_"+chatboxtitle).css('display') != 'none') {
if (align == 0) {
$("#chatbox_"+chatboxtitle).css('right', '20px');
} else {
width = (align)*(225+7)+20;
$("#chatbox_"+chatboxtitle).css('right', width+'px');
}
align++;
}
}
}
我希望在从列表中关闭时删除Chatbox。
function closeChatBox(chatboxtitle) {
//HERE THE REMOVE FROM LIST ?
$('#chatbox_'+chatboxtitle).css('display','none');
restructureChatBoxes();
$.post("chat.php?action=closechat", { chatbox: chatboxtitle} , function(data){
});
}
感谢所有答案。
答案 0 :(得分:1)
首先,找到要删除的元素的index
:
var array = [2, 5, 9];
var index = array.indexOf(5);
注意:browser support for indexOf是有限的,IE7-8不支持。
然后使用splice
删除它:
if (index > -1) {
array.splice(index, 1);
}
splice
的第二个参数是要删除的元素数。注意,splice
修改了数组,并返回一个包含已删除元素的新数组。