Javascript 我的对象不是删除
我有以下Javascript对象Javascript 我的对象不是删除,javascript,Javascript,我有以下Javascript对象 var datasets = []; datasets.push({ DataItem1: { label: "My Title", data: [[9], [11]] }, DataItem2: { label: "Another title", data: [[139], [3], [0], [1]] }, DataItem3: { la
var datasets = [];
datasets.push({
DataItem1: {
label: "My Title",
data: [[9], [11]]
},
DataItem2: {
label: "Another title",
data: [[139], [3], [0], [1]]
},
DataItem3: {
label: "My Label",
data: [[1], [3]]
}
});
我想根据第二个列表删除一个项目。但是,我只知道标签值
这就是我到目前为止所尝试的
var labelsToExclude = [];
labelsToExclude.push("Another title");
var myDataSet = datasets[0];
var dataToUse=[];
for (x in myDataSet) {
var dataItemLabel = myDataSet[x].label;
if (labelsToExclude.indexOf(dataItemLabel) < 0) {
delete myDataSet.x
}
}
dataToUse.push(myDataSet);
var labelsToExclude=[];
标签除外。推(“另一个标题”);
var myDataSet=数据集[0];
var dataToUse=[];
对于(myDataSet中的x){
var dataItemLabel=myDataSet[x].label;
如果(labelsToExclude.indexOf(dataItemLabel)<0{
删除myDataSet.x
}
}
dataToUse.push(myDataSet);
如您所见,我从我的对象中的3个项目开始,我希望在运行此代码后只有2个项目
有人能解释一下我做错了什么吗?我读过,但没用 您正在尝试从myDataSet中删除“x”,而不是从for in循环中删除当前项
delete myDataSet.x
应该是
delete myDataSet[x];
您正在尝试从myDataSet中删除“x”,而不是从for in循环中删除当前项
delete myDataSet.x
应该是
delete myDataSet[x];
很简单,这很完美,谢谢你花时间在你的头像上戴了一顶漂亮的帽子。@AshishMishra,我知道这里的规则,但是,我相信你知道,在我做这件事之前还有一段时间。你也会注意到我已经接受了我发布的每个问题,所以我应该很清楚我知道这个系统是如何工作的!我也不知道你为什么觉得你需要监督这件事,但我想这取决于你……很简单,这很完美,谢谢你花时间在你的头像上戴了一顶漂亮的帽子。@AshishMishra,我知道这里的规则,但是,我相信你知道,在我做这件事之前还有一段时间。你也会注意到我已经接受了我发布的每个问题,所以我应该很清楚我知道这个系统是如何工作的!我也不知道你为什么觉得你需要监督这件事,但我想这取决于你。。。