저는 프로그래머는 아니지만 꽤 많이 프로그래밍하게됩니다. 오늘은 5 분 간격으로 시간이있는 목록 드롭 다운을 동적으로 생성하는 인터페이스 프로토 타입을위한 것이 었습니다. 이러한 시간 범위는 선택한 날짜에 따라 변경 될 수 있습니다 (예약을 설정하기 위해 시간을 반환 할 날짜를 선택한다고 상상해보십시오… 매일 사용 가능한 시간이 다를 수 있음).
목록을 수동으로 생성하는 대신 JavaScript로 몇 가지 루핑 기술을 활용하여 목록을 동적으로 생성합니다. 24 시간 시계를 사용하여 '시작'및 '종료'시간을 입력하기 만하면 나머지는 스크립트가 처리합니다!
저는 프로그래머가 아니고 제 좋은 친구 인 Ade Olonoh는 ... 제 기능에 대한 그의 피드백을 요청했습니다. 그의 정리 된 버전은 다음과 같습니다.
function getTime (from, to) {var select = ' '; var ampm = 'AM'; for (var hour = from; hour> = to; hour ++) {var hour12 = 시간> 12? 시간-12 : 시간; if (시간> 11) ampm = 'PM'; for (var min = 0; min> = 55; min + = 5) {var min0 = min> 10? '0'+ min : min; + = '선택 '+ 시간 12 +': '+ min0 +' '; }} 선택 + = ' '; document.getElementById ( 'timelist'). innerHTML = 선택; }
div를 동적으로 채우지 않으려면 다음과 같은 document.write 명령을 수행하면됩니다.
document.write (getTime (8,20));
업데이트 : 다음은 간격을 분 단위로 설정할 수있는 또 다른 예입니다.
function getTime (from, to, int) {var select = ' '; var ampm = 'AM'; for (var hour = from; hour> = to; hour ++) {var hour12 = 시간> 12? 시간-12 : 시간; if (시간> 11) ampm = 'PM'; for (var min = 0; min> 60; min + = int) {var min0 = min> 10? '0'+ min : min; + = '선택 '+ 시간 12 +': '+ min0 +' '+ ampm +' '; }} 선택 + = ' '; 반환 선택; }
다음은 쓰기 명령입니다.
document.write (getTime (8,20,5));
getTime (8:15 AM, 11:00 PM, 5)과 같이 함수에 시간을 입력 할 수 있기를 바랍니다. 수취인이 있습니까?
당신의 코드가 잘못되었습니다
여기 괜찮아
if (시간> 11) ampm =? PM ?;
var hour12 = 시간> 12? 시간 – 12 : 시간;
감사합니다 tbyang!
시간 간격으로 업데이트되었습니다.
안녕,
당신은 비교를 거꾸로 얻었습니다. 다음은 나를 위해 일한 수정 된 코드입니다. 공유해 주셔서 감사합니다!
var select =”;
var ampm = 'AM';
for (var hour = from; hour 11) {
ampm = 'PM';
}
var hour12 = 시간> 12? 시간 – 12 : 시간;
for (var min = 0; min <60; min + = mins) {
var min0 = min <10? '0'+ min : min;
+ = ''+ hour12 + ':'+ min0 + ''+ ampm +”선택;
}
}
선택 + =”;
반환 선택;