Преобразование времени с 24 часов до 12 часов - PullRequest
5 голосов
/ 25 мая 2011

Я получаю время как 13.40, но мне нужно конвертировать его в 1.40 ... любой знает, каков наилучший способ сделать это. Я использую JQuery, чтобы сделать время.

мой код:

var time = new Date(myDate);
var hours = time.getHours();

alert(hours);

Ответы [ 4 ]

6 голосов
/ 25 мая 2011
if (hours > 12) {
  hours -= 12;
}

Хм, все так просто.

3 голосов
/ 25 мая 2011

Используйте оператор modulus, % для этого

var input = "13.40"; 
var atoms = input.split(".");
var output = atoms[0] % 12 + "." + atoms[1];
output; // "1.40";

Если вы хотите поставить префикс 0, тогда вы можете сделать это

var output = ("0" + atoms[0] % 12).slice(-2) + "." + atoms[1];
output; // "01.40";

Если вы хотите использовать AM / PM в качестве суффикса

var output = ("0" + atoms[0] % 12).slice(-2) + "." + atoms[1] + 
     (atoms[0] < 13 ? " AM" : " PM");
output; // "01.40 PM";
2 голосов
/ 25 мая 2011

Попробуйте

hours = hours > 12 ? hours - 12 : hours;
1 голос
/ 25 мая 2011

Для этого вы можете использовать оператор по модулю:

var hours = time.getHours() % 12
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...