Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将一个JSON对象转换为另一个JSON对象_Javascript_Jquery_Json - Fatal编程技术网

Javascript 如何将一个JSON对象转换为另一个JSON对象

Javascript 如何将一个JSON对象转换为另一个JSON对象,javascript,jquery,json,Javascript,Jquery,Json,我正在尝试使用下面的插件来呈现sharepoint事件列表中的一些事件数据。 在该站点中,我使用了以下内嵌Json示例: <div id="eventCalendarInline"></div> <script> $(document).ready(function () { var eventsInline = [{ "date": "1414490400000", "type": "

我正在尝试使用下面的插件来呈现sharepoint事件列表中的一些事件数据。

在该站点中,我使用了以下内嵌Json示例:

<div id="eventCalendarInline"></div>
        <script>
            $(document).ready(function () {
                var eventsInline = [{ "date": "1414490400000", "type": "meeting", "title": "Project A meeting", "description": "Lorem Ipsum dolor set", "url": "http://www.event1.com/" },
                    { "date": "1414490400000", "type": "demo", "title": "Project B demo", "description": "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.", "url": "http://www.event2.com/" },
                    { "date": "1414490400000", "type": "meeting", "title": "Project A meeting", "description": "Lorem Ipsum dolor set", "url": "http://www.event1.com/" },
                    { "date": "1338885237000", "type": "demo", "title": "Project B demo", "description": "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.", "url": "http://www.event2.com/" },
                    { "date": "1414490400000", "type": "meeting", "title": "Project A meeting", "description": "Lorem Ipsum dolor set", "url": "http://www.event1.com/" },
                    { "date": "1414490400000", "type": "demo", "title": "Project B demo", "description": "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.", "url": "http://www.event2.com/" },
                    { "date": "1344515447000", "type": "meeting", "title": "Project A meeting", "description": "Lorem Ipsum dolor set", "url": "http://www.event1.com/" },
                    { "date": "1345033847000", "type": "demo", "title": "Project B demo", "description": "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.", "url": "http://www.event2.com/" },
                    { "date": "1347712247000", "type": "meeting", "title": "Project A meeting", "description": "Lorem Ipsum dolor set", "url": "http://www.event1.com/" },
                    { "date": "1348230647000", "type": "demo", "title": "Project B demo", "description": "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.", "url": "http://www.event2.com/" },
                    { "date": "1349094647000", "type": "meeting", "title": "Project A meeting", "description": "Lorem Ipsum dolor set", "url": "http://www.event1.com/" },
                    { "date": "1351600247", "type": "demo", "title": "Project B demo", "description": "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.", "url": "http://www.event2.com/" }];

                $("#eventCalendarInline").eventCalendar({
                    jsonData: eventsInline,
                    openEventInNewWindow: true,
                    showDescription: true,
                    eventsScrollable: true
                });
            });
        </script>

没有自动转换这两个对象的方法。您需要自己编写代码:

假设您知道如何在变量
e
中的
result.d.results
中迭代数组,您可以创建如下事件:

var event = {
    type: e.Category.toLowercase(), 
    title: e.Title,
    description: e.Description
};
不过,从
2014-10-21T10:00:00Z
到数字的转换更为复杂。输入格式看起来有点像ISO-8601 plus时区(其中Z==UTC)。对于这些问题,
Date.parse()

    date: Date.parse(e.EventDate),

为什么要使用
eval(JSON.parse(data.body))
JSON.parse(data.body)
应该足够了;使用
eval()。你可以使用格式化服务来美化它。我只是在某个地方找到了代码,不知道他们为什么要放eval。@Aarondigula刚刚粘贴了sharepointTry
console.log(data.body)返回的json
在浏览器的JavaScript控制台中查看服务发送给您的内容。也许他们真的把JSON包装了两次或者其他什么。
var event = {
    type: e.Category.toLowercase(), 
    title: e.Title,
    description: e.Description
};
    date: Date.parse(e.EventDate),