2016-06-02 2 views
-2
var timeZone ="CDT" 
    var startDateTime = "2016-06-15 22:30:00.0"; 

    this.outDate = function() 
     { 
     return getJustTime(startDateTime,timeZone); 
     } 

    function getJustTime(startDateTime,timeZone) 
     { 
     outDt = new Date(startDateTime.replace(/ /g,'T'));  
      return outDt;  
     }  

    **Expected Output** 
     this.outDate = "10.30 PM CDT"; 

私は24時間のdatetime文字列で上記のように2つの変数を持ち、12時間形式の日付文字列に変換したいと思います。私は行方不明で行方不明ですか?JavaScript/jQuery - 24時間Datetime文字列を12Hr日付形式に変換しますか?

P.S:日時ライブラリアンは使用できません。ちょうどあなた自身を書き

+1

チェックこの[記事](http://stackoverflow.com/q/8888491/6188402) –

+0

あなたは、このための完全なJSライブラリを必要とする場合、私は疑問だが、私はいつも([moment.js]を使用http://momentjs.com/)をjsの日付操作用に使用します。 – swatkins

答えて

1

dateオブジェクトは非常に役に立ちます。

function am_or_pm (date) { 
    var date_obj = new Date(date); 
    var hours = date_obj.getHours(); 
    var morn_or_night; 
    // I wouldn't do this in production, but this is to make my logic really clear - I would probably use a conditional operator here. 
    // Handling Midnight 
    if (hours === 0) { 
     hours = 12; 
     morn_or_night = 'AM'; 
    // Handling noon 
    } else if (hours === 12) { 
     morn_or_night = 'PM' 
    } else if (hours > 12) { 
     hours = hours - 12; 
     morn_or_night = 'PM'; 
    } else { 
     morn_or_night = 'AM'; 
    } 
    return hours.toString()+':'+date_obj.getMinutes()+' '+morn_or_night; 
} 
1

var timeZone ="CDT" 
 
var startDateTime = "2016-06-15 22:30:00.0"; 
 
var slot='AM'; 
 
var a = startDateTime.split(" "); 
 
var b = a[0].split("-"); 
 
var c = a[1].split(":"); 
 
if(c[0]>12){ 
 
    slot='PM'; 
 
    c[0] = c[0] - 12; 
 
} 
 
var date = c[0]+'.'+c[1]+' '+slot+' '+timeZone ; 
 
console.log(date);

+1

こんにちは@Toney! StackOverflowへようこそ。コードスニペットの投稿を除いて。これが投稿に答える理由を説明してください。その他のヒントについては、[良い答えを書くにはどうすればいいですか](http://stackoverflow.com/help/how-to-answer)をチェックしてください。 :) –

関連する問題