简单的JSON问题...如何插入变量?

时间:2014-03-19 15:16:50

标签: javascript json http variables stringify

请原谅我的新手问题......我确信这有一个非常直接的解决方案。我在网上找不到任何简明扼要的解释。我有一个JSON:

  var POSTOBJ = {
   "Subject" : {
       "BiographicData" : [
           {
               "Key" : "BarcodeID",
               "Value" : "567891234"
           },
           {
               "Key" : "Gender",
               "Value" : "Male"
           },
           {
               "Key" : "BirthDate",
               "Value" : "8/20/1964"
           },
           {
               "Key" : "Name",
               "Value" : "Success"
           }
       ]
   },
   "GroupID" : "84",
   "ClientID" : "8"
}

我想要做的就是添加另一个键/值对,而不是硬编码我需要放置变量的值。所以我有var val = hex2a(....),其中val存储条形码扫描的输出。我想在这里做的就是把这个值放到我的JSON中。有这样的效果:

var POSTOBJ = {
   "Subject" : {
       "BiographicData" : [
           {
               "Key" : "BarcodeID",
               "Value" : "567891234"
           },
           //WHAT I AM TRYING TO ACCOMPLISH BELOW
           {
               "Key" : "BarcodePayload",
               "Value" : val;
           },
           //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
           {
               "Key" : "Gender",
               "Value" : "Male"
           },
           {
               "Key" : "BirthDate",
               "Value" : "8/20/1964"
           },
           {
               "Key" : "Name",
               "Value" : "Success"
           }
       ]
   },
   "GroupID" : "84",
   "ClientID" : "8"
}

我做了一些关于JSON.stringify方法的讨论,但我找不到一个指南,概述了我是如何做到这一点的。非常感谢帮助:)非常感谢

1 个答案:

答案 0 :(得分:1)

由于它是一个对象数组,只需创建你的对象:

var newObject = {
           "Key" : "BarcodePayload",
           "Value" : val
       }

push到数组:

POSTOBJ.Subject.BiographicData.push(newObject);