[javascript] JavaScript로 현재 날짜 및 시간 얻기

JavaScript로 현재 날짜와 시간을 인쇄하는 스크립트가 있지만 DATE항상 잘못되었습니다. 코드는 다음과 같습니다.

var currentdate = new Date();
var datetime = "Last Sync: " + currentdate.getDay() + "/" + currentdate.getMonth() 
+ "/" + currentdate.getFullYear() + " @ " 
+ currentdate.getHours() + ":" 
+ currentdate.getMinutes() + ":" + currentdate.getSeconds();

인쇄 18/04/2012 15:07:33하고 인쇄 해야 합니다3/3/2012 15:07:33

어떤 도움? 감사



답변

.getMonth()1을 추가해야하는 올바른 월을 얻기 위해 0부터 시작하는 숫자 .getMonth()를 반환 하므로 in을 호출 하면 4not 이 반환 될 수 있습니다 5.

따라서 코드 currentdate.getMonth()+1에서 올바른 값을 출력하는 데 사용할 수 있습니다 . 게다가:

  • .getDate()월의 일을 반환 <-이것은 당신이 원하는 것입니다
  • .getDay()의 별도의 방법으로 Date현재 요일 (0-6)를 나타내는 정수를 반환 객체 0 == Sunday

따라서 코드는 다음과 같아야합니다.

var currentdate = new Date(); 
var datetime = "Last Sync: " + currentdate.getDate() + "/"
                + (currentdate.getMonth()+1)  + "/" 
                + currentdate.getFullYear() + " @ "  
                + currentdate.getHours() + ":"  
                + currentdate.getMinutes() + ":" 
                + currentdate.getSeconds();

JavaScript Date 인스턴스는 Date.prototype에서 상속됩니다. 생성자의 프로토 타입 객체를 수정하여 JavaScript Date 인스턴스에 상속 된 속성 및 메서드에 영향을 줄 수 있습니다.

Date프로토 타입 객체를 사용하여 오늘 날짜와 시간을 반환하는 새로운 메서드를 만들 수 있습니다 . 이러한 새로운 메소드 또는 속성은 Date객체 의 모든 인스턴스에서 상속되므로이 기능을 다시 사용해야하는 경우 특히 유용합니다.

// For todays date;
Date.prototype.today = function () { 
    return ((this.getDate() < 10)?"0":"") + this.getDate() +"/"+(((this.getMonth()+1) < 10)?"0":"") + (this.getMonth()+1) +"/"+ this.getFullYear();
}

// For the time now
Date.prototype.timeNow = function () {
     return ((this.getHours() < 10)?"0":"") + this.getHours() +":"+ ((this.getMinutes() < 10)?"0":"") + this.getMinutes() +":"+ ((this.getSeconds() < 10)?"0":"") + this.getSeconds();
}

그런 다음 다음을 수행하여 날짜와 시간을 간단히 검색 할 수 있습니다.

var newDate = new Date();
var datetime = "LastSync: " + newDate.today() + " @ " + newDate.timeNow();

또는 메소드를 인라인으로 호출하여 간단히

var datetime = "LastSync: " + new Date().today() + " @ " + new Date().timeNow();

답변

시간과 날짜를 얻으려면 사용해야합니다

    new Date().toLocaleString();

>> "09/08/2014, 2:35:56 AM"

사용해야 할 날짜 만 얻으려면

    new Date().toLocaleDateString();

>> "09/08/2014"

사용해야 할 시간 만 얻으려면

    new Date().toLocaleTimeString();

>> "2:35:56 AM"

또는 hh:mm미국 영어의 경우 AM / PM이없는 형식으로 시간을 원할 경우

    new Date().toLocaleTimeString('en-US', { hour12: false, 
                                             hour: "numeric", 
                                             minute: "numeric"});
>> "02:35"

또는 영국 영어

    new Date().toLocaleTimeString('en-GB', { hour: "numeric", 
                                             minute: "numeric"});

>> "02:35"

자세한 내용은 여기를 참조 하십시오 .


답변

이 진정한 mysql 스타일을 위해서는 아래 함수를 사용하십시오 : 2019/02/28 15:33:12

  • 아래의 ‘코드 스 니펫 실행’버튼을 클릭하면
  • 간단한 실시간 디지털 시계 예를 보여줍니다.
  • 데모는 코드 스 니펫 아래에 나타납니다.
function getDateTime() {
        var now     = new Date(); 
        var year    = now.getFullYear();
        var month   = now.getMonth()+1; 
        var day     = now.getDate();
        var hour    = now.getHours();
        var minute  = now.getMinutes();
        var second  = now.getSeconds(); 
        if(month.toString().length == 1) {
             month = '0'+month;
        }
        if(day.toString().length == 1) {
             day = '0'+day;
        }   
        if(hour.toString().length == 1) {
             hour = '0'+hour;
        }
        if(minute.toString().length == 1) {
             minute = '0'+minute;
        }
        if(second.toString().length == 1) {
             second = '0'+second;
        }   
        var dateTime = year+'/'+month+'/'+day+' '+hour+':'+minute+':'+second;   
         return dateTime;
    }

    // example usage: realtime clock
    setInterval(function(){
        currentTime = getDateTime();
        document.getElementById("digital-clock").innerHTML = currentTime;
    }, 1000);
<div id="digital-clock"></div>


답변

그냥 사용하십시오 :

var d = new Date();
document.write(d.toLocaleString());
document.write("<br>");

답변

var currentdate = new Date();

    var datetime = "Last Sync: " + currentdate.getDate() + "/"+(currentdate.getMonth()+1) 
    + "/" + currentdate.getFullYear() + " @ " 
    + currentdate.getHours() + ":" 
    + currentdate.getMinutes() + ":" + currentdate.getSeconds();

0에서 월을 계산하므로 .getDay()방법을 변경 .GetDate()하고 한 달에 추가하십시오.


답변

트릭을 수행해야합니다.

function dateToString(date) {
    var month = date.getMonth() + 1;
    var day = date.getDate();
    var dateOfString = (("" + day).length < 2 ? "0" : "") + day + "/";
    dateOfString += (("" + month).length < 2 ? "0" : "") + month + "/";
    dateOfString += date.getFullYear();
    return dateOfString;
}

var currentdate = new Date();
var datetime = "Last Sync: ";
datetime += dateToString(currentdate );
datetime += + currentdate.getHours() + ":"
            + currentdate.getMinutes() + ":"
            + currentdate.getSeconds();

답변

getDay()요일을 가져옵니다. 3수요일입니다. 당신이 원한다면 getDate(), 그것은 돌아올 것 18입니다.

또한 getMonth()시작 0추가해야 1얻을 수 4(4 월)을.

데모 : http://jsfiddle.net/4zVxp/