从数组

时间:2015-07-11 09:42:42

标签: javascript arrays

如何从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){  
    });

}

感谢所有答案。

1 个答案:

答案 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修改了数组,并返回一个包含已删除元素的新数组。

Source