从JSON文件接收日期范围并将它们存储到JS文件中的变量中?

时间:2018-02-12 20:32:50

标签: javascript json date

我无法弄清楚如何从JSON文件接收日期并从JS文件中请求它们并将它们存储到变量中?

目前这是我的.json文件的样子:

[{
"start": "2018-02-01T00:00:01.235-0600",
"end": "2018-02-28T00:00:01.235-0600"
}]

我的目标是能够使用JSON文件中的这两个日期,以便能够在特定日期范围内运行代码。

提前谢谢大家!

2 个答案:

答案 0 :(得分:0)

实际上很容易。首先,您必须加载Json文件。既然你在评论中说你在浏览器端这样做,我想你可以同步这样做。

 var xhr = new XMLHttpRequest() // create an xhr request
 xhr.open("GET", "dates.json", false) // open dates.json for getting values - asynchronously = false
xhr.send() // send the request
var response = xhr.responseText // a string containing your Json code
var jsonObj = JSON.parse(response) // save json as an object
// now you have your dates saved as
jsonObj[0].start; 
jsonObj[0].end;

答案 1 :(得分:0)

如果您的浏览器可以运行ES6,那么您可以使用fetch和异步承诺解决此问题:

fetch('https://www.server.com/file.json')
  .then(res => {
    if(res.ok) {
        return res.json();  
    }

    throw new Error(`${res.status}:${res.statusText}`);
   })
  .then(dates => dates.map(date => ({ start: new Date(date.start), end: new Date(date.end)}))
  .then(dates => {
        console.log(dates)
   })
  .catch(err => { /*handle errors*/ });