Comment envoyer des données à un objet imbriqué

Comment puis-je pousser un autre élément dans la propriété des variables partir de l'objet ci-dessous?

  var request = { "name": "Name", "id": 3, "rules":[ { "name": "Rule name", "tags": [ { "tagId": 1, "variables":[ { "variable": "var1", "matchType": "Regex", "value": ".*" }, { "variable": "var2", "matchType": "Regex", "value": ".*" } ], "condition": false, }, { "tagId": 1, "condition": false, } ], "ruleSetId": 3, } ] } 

Pour exaple, je dois ajouter {"variable": "var3", "matchType": "Regex", "value": ".*"} la propriété variables de l'objet request … comment puis-je faire cela?

 for(i=0;i<duplicates.length; i++) { var request = { "name": duplicates[i].scope, "id": 3, "rules":[ { "name": duplicates[i].scope + " " + "OP SDR Sync", "tags": [ { "tagId": 1, "variables":[ { } ], "condition": false, }, { "tagId": 1, "condition": false, } ], "ruleSetId": 3, } ] } request.rules[0].tags[0].variables[0].push({ "variable":"var3", "matchType": "Regex", "value": ".*" }); } 

Vous devez "naviguer" correctement dans votre objet:

 request.rules[0].tags[0].variables.push({ "variable":"var3", "matchType": "Regex", "value": ".*" }) 

request['variables'] tentera simplement de trouver la clé des variables dans la racine de l'objet de request . Cette clé n'est tout simplement pas définie, mais elle est imbriquée dans votre structure objet / tableau.

Essayez comme ceci:

 object = {"variable": "var3", "matchType": "Regex", "value": ".*"}; request.rules[0].tags[0].variables.push(object); 
 request.rules[0].tags.variables[0].push({ "variable":"var3", "matchType": "Regex", "value": ".*" }); 

Vous devez naviguer dans votre tableau. Remplacez le 0 dans le [] pour sélectionner l'élément dans le tableau. (0 est la première entrée, 1 est la deuxième entrée, etc.).

Essayer:

 request.rules[0].tags[0].variables.push({ "variable":"var3", "matchType": "Regex", "value": ".*" }) 

variables sont dans les tags , et les tags sont dans les rules .

J'ai édité la réponse

L'opérateur de point (.) Peut être utilisé pour obtenir la valeur d'une propriété d'objet particulière.

Les crochets ([]) peuvent être utilisés pour accéder à un élément d'un tableau.

Maintenant, la réponse à votre question:

 request.rules[0].tags[0].variables.push({ "variable": "var3", "matchType": "Regex", "value": ".*" }); 

Ici, [0] spécifie le premier élément de votre tableau.