IT

Javascript date.getYear ()는 2011에서 111을 반환합니까?

lottoking 2020. 6. 1. 08:12
반응형

Javascript date.getYear ()는 2011에서 111을 반환합니까? [복제]


이 질문에는 이미 답변이 있습니다.

날짜 필터를 이전 달의 첫날과 마지막 날에 자동으로 설정하는이 자바 스크립트가 있습니다.

$(document).ready(function () {
    $("#DateFrom").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#DateTo").datepicker({ dateFormat: 'dd/mm/yy' });

    var now = new Date();
    var firstDayPrevMonth = new Date(now.getYear(), now.getMonth() - 1, 1);
    var firstDayThisMonth = new Date(now.getYear(), now.getMonth(), 1);
    var lastDayPrevMonth = new Date(firstDayThisMonth - 1);

    $("#DateFrom").datepicker("setDate", firstDayPrevMonth);
    $("#DateTo").datepicker("setDate", lastDayPrevMonth);
}); 

그러나 now.getYear()2011 년 예상 대신 111을 반환합니다. 내가 놓친 것이 있습니까?


https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/getYear

getYear더 이상 사용되지 않고 getFullYear메소드 로 대체되었습니다 .

getYear방법은 1에서 1900을 뺀 값을 반환합니다. 그러므로:

  • 2000보다 크거나 같은 연도에 의해 반환되는 값 getYear은 100 이상입니다. 예를 들어 연도가 2026이면

    getYear126을 반환합니다.
  • 1900에서 1999 사이의 연도에서 반환 된 값 getYear은 0과 99 사이입니다. 예를 들어 연도가 1976이면 getYear76을 반환합니다.
  • 1900보다 작은 연도의 경우 반환 된 값 getYear은 0보다 작습니다. 예를 들어 연도가 1800이면 getYear-100을 반환합니다.
  • 2000 년 전후의 연도를 고려하려면 연도가 완전히 지정되도록 getFullYear대신 사용해야 합니다 getYear.

본 헤드 선례를 준수하기 위해 getYear()1900 년 이후의 연도 수를 반환합니다.

대신 getFullYear()실제 연도를 반환하는을 호출해야합니다 .


Mozilla의 JS 페이지에서 읽은 내용에서 getYear는 더 이상 사용되지 않습니다. 여러 번 지적했듯이 getFullYear()갈 길입니다. 정말로 사용하고 싶다면 getYear()1900을 추가하십시오.

var now = new Date(),
    year = now.getYear() + 1900;

참고 URL : https://stackoverflow.com/questions/4754938/javascript-date-getyear-returns-111-in-2011

반응형