2017-08-08 76 views
-1

模型我有一个JSON模式具有以下属性:如何删除一个属性,并更新与新属性

oData: 
Object 
answers 
: 
Array(18) 
0 
: 
Object 
1 
: 
Object 
2 
: 
Object 
3 
: 
Object 
4 
: 
Object 
5 
: 
Object 
6 
: 
Object 
7 
: 
Object 
8 
: 
Object 
9 
: 
Object 
10 
: 
Object 
11 
: 
Object 
12 
: 
Object 
13 
: 
Object 
14 
: 
Object 
15 
: 
Object 
16 
: 
Object 
17 
: 
Object 
length 
: 
18 
__proto__ 
: 
Array(0) 
auditNeeded 
: 
false 
cancelledAt 
: 
null 
cancelledBy 
: 
null 
dbId 
: 
0 
description 
: 
null 
hardeningLevelHigh 
: 
false 
lastSavedAt 
: 
null 
lastSavedBy 
: 
null 
manager 
: 

projectId 
: 
null 
scenario 
: 
null 
secConceptComment 
: 
null 
secConceptNeededAfterValidation 
: 
false 
secConceptNeededSelfAssessment 
: 
false 
secConceptStatus 
: 
null 
status 
: 
null 
submittedAt 
: 
null 
submitter 
: 
null 

正如你可以看到我得到的第一个属性asnsers的数组,其中每个答案有一个结构,如:

oData: 
Object 
answers 
: 
Array(18) 
0 
: 
Object 
active 
: 
false 
answer 
: 
true 
explanation 
: 
"Tooltip 1" 
feedback 
: 
null 
id 
: 
0 
question 
: 
"Is personal data being processed?" 
questionId 
: 
7 
versionId 
: 
0 

我需要删除我的模型上面的回答阵列,包括与现有型号相同的答案结构的新阵列。

1)如何从我的模型中删除答案对象。

2)如何在同一模型中包含我新创建的答案模型。

谢谢!

+2

请在[文字记号](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer)中添加对象。 –

回答

0

删除答案属性只是做到这一点

delete myObj.answers; 

在阵列中添加新的对象也退出简单

myObj["answer"] = []; 
0

在这里,你去了一个解决方案https://jsfiddle.net/vbhakrfb/

var data = {answer: [ 
 
    {"a": "A"}, 
 
    {"b": "B"}, 
 
    {"c": "C"} 
 
]}; 
 

 
console.log("Before deleting: ", data); 
 

 
delete data.answer; 
 

 
console.log("After deleting: ", data); 
 

 
data.answer = [ 
 
    {"newa" : "A"}, 
 
    {"newb" : "B"} 
 
]; 
 

 
console.log("Added new Answer: ", data);