javascript中的数组格式

时间:2014-08-08 06:02:46

标签: javascript arrays json

我有一个像这样的json数组

 var data= [
  {
    "id": 24,
    "title": "BCOM",
    "start": "2014-08-05 12:59:00 PM",
    "end": "2014-08-05 2:59:00 PM",
    "description": "mcom",
    "DIFF": 120
  },
  {
    "id": 26,
    "title": "MCOM",
    "start": "2014-08-10 12:59:00 PM",
    "end": "2014-08-10 4:59:00 PM",
    "description": "mcom",
    "DIFF": 240
  },
  {
    "id": 29,
    "title": "MCOM",
    "start": "2014-08-11 12:59:00 PM",
    "end": "2014-08-11 8:59:00 PM",
    "description": "mcom",
    "DIFF": 480
  },
  {
    "id": 30,
    "title": "MCOM",
    "start": "2014-08-13 12:59:00 PM",
    "end": "2014-08-13 4:59:00 PM",
    "description": "mcom",
    "DIFF": 240
  }
]

我想让这个数组的索引带有双引号并改变一些索引名称,以及使用javascript数组函数进行一些其他修改。

喜欢

var data = [
            {
                id: 24,
                title:"MCOM",
                y: 120


            },              

            {
                id: 26,
                title:"MCOM",
                y: 240,

            },
            {
                id: 29,
                title:"MCOM",
                y: 480,

              },

        ]

请帮助我,谢谢

3 个答案:

答案 0 :(得分:1)

带引号({ "title": "asdf" })的索引等效到javascript中没有引号({ title: "asdf" })的索引,除了您可以使用更多符号,如空格,括号或关键字引用的版本。

另外,在JSON中,你 HAVE 在索引周围添加引号,否则它是无效的JSON。

关于修改,您可以使用Array.prototype.map()执行此操作

var newData = data.map(function (el) {
    return {
        id: el.id,
        title: el.title,
        y: el.DIFF
    };
});

console.log(newData);

答案 1 :(得分:1)

对此

使用数组map功能
var result = data.map(function (obj) {
    return {id:obj.id,title:obj.title,y:obj.DIFF};
})

console.log(result);

我在结果中假设BCOMtitleid,24。我这是一种类型,它被写为{ {1}}。

我认为MCOM对于密钥不重要。

答案 2 :(得分:0)

做一些谷歌搜索;-)它会有所帮助..

var data = '{ "name": "John Smith" }';       //Let's say you got this
data = data.replace(/\"([^(\")"]+)\":/g,"$1:");  //This will remove all the quotes
data;                                         //'{ name: "John Smith" }'

希望它有所帮助。