Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.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或Typescript中数组数组中的对象_Javascript_Arrays_Typescript_Object - Fatal编程技术网

删除JavaScript或Typescript中数组数组中的对象

删除JavaScript或Typescript中数组数组中的对象,javascript,arrays,typescript,object,Javascript,Arrays,Typescript,Object,我正在尝试删除/删除位于数组A中x位置的对象,从而使数组A位于另一个数组中,如下所示: var lol = [ [ {'a':1}, {'b':2}, {'c':3} ], [ {'d':4}, {'e':5}, {'f':6}

我正在尝试删除/删除位于数组A中x位置的对象,从而使数组A位于另一个数组中,如下所示:

    var lol = [ 
            [
              {'a':1},
              {'b':2},
              {'c':3}
            ], 
            [
              {'d':4},
              {'e':5},
              {'f':6}
            ], 
            [
              {'g':7},
              {'h':8},
              {'i':9}
            ]
];
现在让我们假设我想删除带有键
'f'
的对象。我有一个

function deleteNestedElement(outerIndex, innerIndex) {
        lol[outerIndex].splice(0, innerIndex);
}
随叫随到

deleteNestedElement(2,0);
alert(lol);
我得到的结果如下:

[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
这是我的

我需要根据需要从此数组中删除特定元素。

要删除项目,需要索引(第一个参数)和要删除的项目数(第二个参数)。您传递了0和0-从索引0中删除0项,因此未删除任何内容

此外,
alert()
将JS对象转换为字符串,这就是您看到的。改用
console.log()

函数deleteNesteElement(outerIndex,innerIndex){
lol[outerIndex].拼接(innerIndex,1);
}
var lol=[{“a”:1}、{“b”:2}、{“c”:3}、{“d”:4}、{“e”:5}、{“f”:6}、{“g”:7}、{“h”:8}、{“i”:9}];
删除嵌套元素(1,2);//这将删除“f”对象
删除嵌套元素(2,0);//这将删除“g”对象
控制台日志(lol)要删除项目,需要索引(第一个参数)和要删除的项目数(第二个参数)。您传递了0和0-从索引0中删除0项,因此未删除任何内容

此外,
alert()
将JS对象转换为字符串,这就是您看到的。改用
console.log()

函数deleteNesteElement(outerIndex,innerIndex){
lol[outerIndex].拼接(innerIndex,1);
}
var lol=[{“a”:1}、{“b”:2}、{“c”:3}、{“d”:4}、{“e”:5}、{“f”:6}、{“g”:7}、{“h”:8}、{“i”:9}];
删除嵌套元素(1,2);//这将删除“f”对象
删除嵌套元素(2,0);//这将删除“g”对象
控制台日志(lol)
函数将第一个参数作为
索引
,将第二个参数作为要删除的元素数。在我们的例子中,它应该是
splice(innerIndex,1)
,因为我们需要删除特定索引(即innerIndex)中的1个元素

此外,数组的索引从0开始,因此对于数组中的第二项,您需要为outerIndex传递1,为innerIndex传递2,如
DeleteNesteElement(1,2)

varlol=[[{“a”:1},{“b”:2},{“c”:3}],{“d”:4},{“e”:5},{“f”:6}],{“g”:7},{“h”:8},{“i”:9}];
函数deleteNesteElement(outerIndex,innerIndex){
lol[outerIndex].拼接(innerIndex,1);
}
删除嵌套元素(1,2);
控制台日志(lol)
函数将第一个参数作为
索引
,将第二个参数作为要删除的元素数。在我们的例子中,它应该是
splice(innerIndex,1)
,因为我们需要删除特定索引(即innerIndex)中的1个元素

此外,数组的索引从0开始,因此对于数组中的第二项,您需要为outerIndex传递1,为innerIndex传递2,如
DeleteNesteElement(1,2)

varlol=[[{“a”:1},{“b”:2},{“c”:3}],{“d”:4},{“e”:5},{“f”:6}],{“g”:7},{“h”:8},{“i”:9}];
函数deleteNesteElement(outerIndex,innerIndex){
lol[outerIndex].拼接(innerIndex,1);
}
删除嵌套元素(1,2);

控制台日志(lol)如果在函数调用之前发出警报(lol),则会得到相同类型的输出。您正在提醒对象,而不是字符串,因此您的输出将是这样。请改为尝试执行console.log,或使用浏览器调试工具。您需要详细了解
splice()
的工作原理。另外,使用
alert()
对于objects@charlietfl,谢谢,我想知道splice是否对阵列做了什么,这就是为什么它在警报中是这样的。我现在明白了。你怎么知道当你看不到每个物体里都有什么?登录到控制台可以让您看到更改如果在函数调用之前发出警报(lol),您将获得相同类型的输出。你是在提醒对象,而不是字符串,所以这就是你的输出。请改为尝试执行console.log,或使用浏览器调试工具。您需要详细了解
splice()
的工作原理。另外,使用
alert()
对于objects@charlietfl,谢谢,我想知道splice是否对阵列做了什么,这就是为什么它在警报中是这样的。我现在明白了。你怎么知道当你看不到每个物体里都有什么?登录到控制台可以查看更改