使用变量作为字段创建JSON对象

时间:2015-06-05 16:04:01

标签: javascript json

我想创建一个JSON对象,其变量为关联变量名,类似于以下内容:

var field = 'first';
var query = { details.field, details.field };

如果细节是固定值,我更愿意。

这是我目前的数据集

{
    field1: ,
    group: {
        first:
    }
}

我的问题是,如何使用变量作为字段创建JSON对象?

2 个答案:

答案 0 :(得分:2)

您可以向对象添加属性,如下所示:

    var tweetObj = PFObject(className: "tweets")

    tweetObj["userName"] = PFUser.currentUser()!.username
    tweetObj["profileName"] = PFUser.currentUser()!.valueForKey("profileName") as! String
    tweetObj["photo"] = PFUser.currentUser()!.valueForKey("photo") as! PFFile
    tweetObj["tweet"] = theTweet
    tweetObj["tweetType"] = 1

    if hasImage == true {

        tweetObj["hasImage"] = "yes"

        let imageData = UIImagePNGRepresentation(self.tweetImg.image)
        let imageFile = PFFile(name: "tweetPhoto.png", data: imageData)
        tweetObj["tweetImage"] = imageFile

    } else {

        tweetObj["hasImage"] = "no"

    }


    tweetObj.save()

    println("tweet!")
    self.dismissViewControllerAnimated(true, completion: nil)
}

这会给你一个对象:

@import (less)

然后您可以使用query.details.first或query.details [field];

进行访问

这就是你要找的东西吗?

答案 1 :(得分:0)

在Javascript中实现此目的的一种简单方法是使用。操作

query.details.field = "first";

这将产生如下对象:

"query" { "details" { "field": "first"} }

这是你想要的吗?

如果您想要多个细节,则需要使用数组。

var query = [];
query.push({"details" { "field" : "first"} });
query.push({"details" { "field" : "second"} });

这将产生这样的对象     "查询" [         "细节" {" field" :"第一个"},         "细节" {" field" :"秒"}     ]