Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从数组中删除和删除对象_Javascript - Fatal编程技术网

Javascript 如何从数组中删除和删除对象

Javascript 如何从数组中删除和删除对象,javascript,Javascript,如何从数组中删除对象 我创建了一个数组,该数组的每个元素都包含一个对象。此外,该数组已关联到HTML表。如何创建一个函数,如果我单击表的一行中的删除按钮,它将删除该行,但也会删除数组中的特定对象 您可以使用从数组中删除项。然后,您可以在表中隐藏该元素,或通过按钮或单击从目标中获取该元素。最后,您可以向后端发出删除请求(如果有的话) 使用拼接 $.each(someArray, function(i){ if(someArray[i].name === 'Sample') {

如何从数组中删除对象

我创建了一个
数组
,该数组的每个元素都包含一个
对象
。此外,该数组已关联到HTML
。如何创建一个函数,如果我单击
的一行
中的删除按钮,它将删除该行
,但也会删除
数组中的特定
对象

您可以使用从数组中删除项。然后,您可以在表中隐藏该元素,或通过按钮或单击从
目标中获取该元素。最后,您可以向后端发出删除请求(如果有的话)

使用拼接

 $.each(someArray, function(i){
        if(someArray[i].name === 'Sample') {
            someArray.splice(i,1);
            return false;
        }
    });
或者使用JQuery.grep

someArray = jQuery.grep(someArray , function (value) {
        return value.name != 'Sample';
});
或过滤器

var filtered = someArray.filter(function(el) { return el.Name != "Sample"; }); 

您需要两个删除程序,一个将从
表中删除
tr
元素,另一个将从
数组中删除
对象。您可以使用单击的元素从目标中找到该元素,然后使用
removeChild
将其从其父节点中删除。最后,可以使用
splice
从数组中删除对象

请检查此实现

var数组=[];
var rowButtons=document.querySelectorAll('td>div');
rowButtons.forEach(功能(按钮){
变量对象={
id:button.id.split(“”“)[1],
名称:button.id
};
array.push(对象);
addEventListener('click',function(){
var指数=此.id.split(“”“)[1];
控制台日志(索引);
如果(索引>-1){
var trNode=this.parentNode.parentNode;
if(trNode.nodeName&&trNode.nodeName=='TR'){
trNode.parentNode.removeChild(trNode);//从表中删除
}
array.splice(索引,1);//从数组中删除
}
});
});

.tg{
边界塌陷:塌陷;
边界间距:0;
边框颜色:#aabcfe;
}
.tg td{
字体系列:Arial,无衬线;
字体大小:14px;
填充:10px 5px;
边框样式:实心;
边框宽度:1px;
溢出:隐藏;
断字:正常;
边框颜色:#aabcfe;
颜色:#669;
背景色:#e8edff;
}
.tg th{
字体系列:Arial,无衬线;
字体大小:14px;
字体大小:正常;
填充:10px 5px;
边框样式:实心;
边框宽度:1px;
溢出:隐藏;
断字:正常;
边框颜色:#aabcfe;
颜色:#039;
背景色:#b9c9fe;
}
.tg.tg-jb4r{
背景色:#C0;
颜色:#333333;
文本对齐:居中;
垂直对齐:顶部
}
.tg.tg-n1xd{
背景色:#EFEF;
颜色:#333333;
垂直对齐:顶部
}
.tg.tg-yjn3{
背景色:#ffffff;
颜色:#333333;
垂直对齐:顶部
}
.tg.tg-ggmw{
背景色:#EFEF;
颜色:#333333;
文本对齐:右对齐;
垂直对齐:顶部
}
.tg.tg kybs{
背景色:#ffffff;
颜色:#333333;
文本对齐:右对齐;
垂直对齐:顶部
}
不
竞争
约翰
亚当
罗伯特
保罗
行动
1.
游泳
1:30
2:05
1:15
1:41
删去
2.
跑步
15:30
14:10
15:45
16:00
删去
3.
射击
70%
55%
90%
88%
删去

除了循环时拼接会导致问题之外。欢迎使用堆栈溢出!您似乎在要求某人为您编写一些代码。堆栈溢出是一个问答网站,而不是代码编写服务。请阅读并学习如何写有效的问题。