시간을 그래프로 표시 할 수 있도록 분수로 저장했습니다 (예 : 15.5는 3.30pm이고 23.25는 11.15pm입니다. 그 숫자를 HH : MM : SS 형식의 문자열로 변환해야합니다. 이 작업을 수행하는 간단한 방법이 있습니까?자바 스크립트 : 시간 (분수로 저장)을 읽을 수있는 문자열로 변환하는 방법은 무엇입니까?
답변
이와 비슷한?
var fraction = 14.5;
var hours = Math.floor(fraction); // extract the hours (in 24 hour format)
var mins = 60 * (fraction - hours); // calculate the minutes
t = new Date(); // create a date/time object
t.setHours(hours); // set the hours
t.setMinutes(mins); // set the mins
alert(t.toTimeString()); //show it
또는 완전히 수동
var fraction = 14.5;
var hours = Math.floor(fraction);
var mins = 60 * (fraction - hours);
var ampm = ((fraction%24)<12)?'am':'pm';
formatted = ('0' + hours%12).substr(-2) + ':' + ('0' + mins).substr(-2) + ':00 ' + ampm;
alert(formatted);
업데이트
뿐만 아니라 초와 버전 ..
var fraction = 14.33;
var hours = Math.floor(fraction);
var allseconds = 3600 * (fraction - hours);
var minutes = Math.floor(allseconds/60);
var seconds = Math.floor(allseconds%60);
var ampm = ((fraction%24)<12)?'am':'pm';
formatted = ('0' + hours%12).substr(-2) + ':' + ('0' + minutes).substr(-2) + ':' + ('0' + seconds).substr(-2) +' ' + ampm;
alert(formatted);
var fraction = 23.5;
var date = new Date(2000, 1, 1); // use any date as base reference
date.setUTCSeconds(fraction * 3600); // add number of seconds in fractional hours
그런 다음 서식 지정 및 채우기가 필요하지 않은 경우 this 또는 Date.js과 같은 날짜 서식 스크립트를 사용하십시오.
date.format("HH:MM:ss"); // 23:30:00
See an example. here의 서식 지정 기능을 사용하고 있습니다.
+1, 훌륭하게 .. 나는 수동으로 .. LOL .. * facepalm *! –
+1 예, Steven Leviathin의 날짜 포맷터는 JS의 유연한 날짜 형식에 대해 훌륭합니다. http://blog.stevenlevithan.com/archives/date-time-format – fearoffours
@Gaby - 최근 JavaScript 집합 * 함수가 오버플로를 매우 잘 처리한다는 것을 발견했습니다. 멋지게 내게 경외감을 갖 춥니 다 :) .. @fearoffours - Date.js가 너무 많이 느껴질 때 실제로 날짜 형식을 지정하는 멋진 가벼운 라이브러리입니다 :) – Anurag
수동 기능 :
var time = function(num) {
if(num < 0 || num >= 24) {throw "Invalid number");}
var x = num > 13 ? num - 12 : num;
var h = Math.floor(x);
var min = x - h;
var ampm = num >= 12 && num < 24 ? "pm" : "am";
return (h + ":" + Math.floor(min * 60) + ampm);
};
테스트 :
는 time(13.40); // 1:24pm
time(11.25); // 11:15pm
time(12.50); // 12:30pm
time(23.50); // 11:30pm
time(0.50); // 0:30am
time(24.00); // error!!
- 1. python datetime을 읽을 수있는 형식의 날짜 문자열로 변환하는 방법은 무엇입니까?
- 2. XML을 읽을 수있는 것으로 변환하는 방법은 무엇입니까?
- 3. 자바 스크립트 객체를 문자열로 변환하는 PHP 코드
- 4. C에서 문자열로 분수로 double 변환 #
- 5. WebResponse.GetResponseStream을 문자열로 변환하는 방법은 무엇입니까?
- 6. 틱을 XSLT로 읽을 수있는 datetime으로 변환하는 방법은 무엇입니까?
- 7. linq 쿼리를 사람이 읽을 수있는 문자열로 변환하는 방법
- 8. 숫자를 문자열로 변환하는 방법은 무엇입니까?
- 9. Ada.Real_TIme.Time을 문자열로 변환하는 방법은 무엇입니까?
- 10. PHP : datetime을 시간 문자열로 변환하는 가장 좋은 방법은 무엇입니까?
- 11. linq sql을 사용하여 시간 필드를 문자열로 변환하는 방법은 무엇입니까?
- 12. 문자열의 배열을 문자열로 변환하는 방법은 무엇입니까?
- 13. .btr 및 .lck 파일을 읽을 수있는 SQL로 변환하는 방법은 무엇입니까?
- 14. "러시아어 단어"를 읽을 수있는 것으로 변환하는 방법은 무엇입니까?
- 15. 메이크 파일을 읽을 수있는 코드로 변환하는 방법은 무엇입니까?
- 16. .NET System.String을 VBScript에서 사용할 수있는 문자열로 변환하는 방법은 무엇입니까?
- 17. 문서를 다시 문자열로 변환하는 방법은 무엇입니까?
- 18. 자바 토큰을 문자열로 변환하는 방법?
- 19. ASCII 바이트 벡터를 문자열로 변환하는 방법은 무엇입니까?
- 20. 자바 스크립트에서 String을 long으로 변환하는 방법은 무엇입니까?
- 21. HTMLElement를 문자열로 변환하는 방법
- 22. 자바 스크립트 제한 시간 스크립트
- 23. 바이트 배열을 문자열로 변환하는 방법은 무엇입니까?
- 24. MQseries 이유 코드를 문자열로 변환하는 방법은 무엇입니까?
- 25. 문자열을 부분 문자열로 변환하는 방법은 무엇입니까?
- 26. 바이트 배열을 문자열로 변환하는 방법은 무엇입니까?
- 27. GLib에서 정수를 문자열로 변환하는 방법은 무엇입니까?
- 28. C에서 16 진수를 문자열로 변환하는 방법은 무엇입니까?
- 29. datetime 변수를 JavaScript로 문자열로 변환하는 방법은 무엇입니까?
- 30. NSScanner 값을 문자열로 변환하는 방법은 무엇입니까?
분율은 또한 분뿐만 아니라 초를 저장,하지만 그건 내가 지금까지 – Sarah
@Sarah을 필요한 모양, 완전히 또 다른 방법을 추가 설명서 .. –
@Sarah, 초를 추가 한 버전 : –