如何将字符串转换为24小时?

时间:2011-07-18 15:23:01

标签: javascript jquery

所以我有一个JSON返回时间,如“上午10:00”>我需要从当前系统时间创建一个其他八次的数组。所以它会像“上午10:00,上午11:00,中午12:00,上午1:00等”

到目前为止,这是我目前的代码:

   var katie=new Array();
   var webdate = new Date().getHours();
   var firsthr = day.date.start.time;
   for (i=0; i<=8; i++){
      katie{i] = webdate;
      webdate = webdate +1;       
   }

3 个答案:

答案 0 :(得分:0)

你可以这样试试。

      var str=new Array();
      var webdate = new Date();
          for (i=0; i<=8; i++){
               webdate.setHours(i);       
               str[i] = webdate;
          }

答案 1 :(得分:0)

Date.js是一个非常有用的库,用于将字符串解析为日期。 在此api doc page上,Date.js搜索“.parse”。此外,FormatSpecifiers page有助于将日期转换为字符串。

你说你有一个带字符串的JSON,“上午10点”。假设这个JSON,

var data = {time: "10:00am"};

你可以像这样创建一个日期对象:

 var date = Date.parse(data.time);
 // this will create a date object with today's date and time set to 10am

然后,您可以使用循环将时间增加到上午10点以后的小时。总而言之,它看起来像这样

<script src="date.js"></script>
<script>

var data = {time: "10:00am"};
var date = Date.parse(data.time);

//push today @ 10am
var katie=new Array(new Date(date));
for (i=0; i<=8; i++){
  //add an hour to date, then push new Date object based on date
  date.add({hours:1});
  katie.push(new Date(date));
}
</script>

答案 2 :(得分:0)

你可以试试这个 -

      var str=new Array();
      var webdate = new Date();
          var currenthours = webdate.getHours();
          var looplimit = currenthours + 8;
          for (i=currenthours; i<looplimit; i++){
               webdate.setHours(i);       
               str[i] = webdate.getHours() >= 12 ? webdate.getHours() -12 +':00pm' : webdate.getHours() +':00am';
          }
      }