찾다
웹 프론트엔드JS 튜토리얼JavaScript 날짜 객체 날짜(요약 공유)

이 글은 javascript에 대한 관련 지식을 제공합니다. 주로 Date 객체 생성, Date 객체의 메소드 등을 포함하여 날짜 객체 Date와 관련된 문제를 정리합니다. 모두에게 도움이 되기를 바랍니다. .

JavaScript 날짜 객체 날짜(요약 공유)

【관련 권장 사항: javascript 비디오 튜토리얼, web front-end

날짜와 시간은 프로그래밍 과정에서 생략할 수 없는 필수 과정입니다. 다행히 JavaScript에는 있습니다. 우리를 위해 준비했습니다. 내장 객체 날짜(date)입니다. 이 객체를 통해 우리는 생성, 저장, 수정, 시간 측정, 인쇄 및 기타 기본 작업을 수행할 수 있습니다. 이는 모든 JavaScript 프로그래머에게 필요한 과정 중 하나입니다. JavaScript为我们准备好了一个内建的对象Date(日期)。通过该对象,我们可以创建、存储、修改、测量时间、打印等基础操作,是每个JavaScript程序员的必修课之一。

Date对象的创建

和普通的对象一样,我们可以使用new Date()来创建一个Date对象,还可以在创建的时候传入一些初始化参数。

new Date()

不带参数的创建案例:

let now = new Date()console.log(now)

代码执行结果如下:

JavaScript 날짜 객체 날짜(요약 공유)

这样就简单的输出了代码执行时的具体时间,这里显示的就是2022年6月22日 19点25份24秒

new Date(milliseconds)

创建一个带有毫秒参数的日期对象,其中milliseconds指的是自1970年1月1日UTC+0之后的毫秒数(1毫秒=1/1000秒)。

//创建一个时间,举例1970.1.1时间点0毫秒
let jan01_1970 = new Date(0)
console.log(jan01_1970)

//创建一个时间,比1970年1.1时间点晚3天(3天*24小时*3600秒*1000毫秒)
let jan04_1970 = new Date(3 * 24 * 3600 * 1000)
console.log(jan04_1970)

代码执行结果:

JavaScript 날짜 객체 날짜(요약 공유)

milliseconds就是从1970年1月1日 00:00:00以来,经过的毫秒数,或者称之为时间戳

时间戳是一种简单的日期数字化表示方式,我们通常使用new Date(milliseconds)创建一个日期。如果我们已经有了一个日期Date对象,可以使用date.getTime()获得日期对应的时间戳。

注意:

中国处于动8区,所以上例中的时间都不是00:00:00,而是08:00:00

1970年之前的时间?

时间戳不仅仅是整数,也可以是负数,例如:

//1969-12-31 00:00:00let dec31_1969 = new Date(-24 * 3600 * 1000)console.log(dec31_1969)

代码执行结果:

JavaScript 날짜 객체 날짜(요약 공유)

new Date(date_str)

如果每次创建时间都是用时间戳,可能并不方便,因为时间戳计算还是有点难度的。

我们还可以使用时间字符串创建一个时间,举个例子:

let date = new Date('2022-06-22 00:00:00')console.log(date)

代码执行结果:

JavaScript 날짜 객체 날짜(요약 공유)

new Date(year, month, date, hours, minutes, sec, ms)

  • year——必须是四位的数字;
  • month——[0,11]0表示一月;
  • date——当月的某一天,默认为1
  • hours/minutes/sec/ms——默认为0;

举个栗子:

let date = new Date(2022,6,22,20,35,33)console.log(date)

代码执行结果:

JavaScript 날짜 객체 날짜(요약 공유)

我们还可以指定毫秒数:

let date = new Date(2022,6,22,20,35,33,777)console.log(date)

Date对象的方法

如果我们有一个Date对象,我们可以通过Date对象的内置方法,获取时间的一部分,例如年份、月份、日期等。

获取日期内容

例如我们有日期date

let date = new Date(2022,5,22,20,35,33)
  1. getFullYear()获取年份,date.getFullYear()返回2022
  2. getMonth()获取月份,date.getMonth()返回5,也就是6月;
  3. getDate()获取当月的日期,date.getDate()返回22;
  4. getDay()获取当前时间在一周的哪一天,date.getDay()返回3

    Date 객체 생성

  5. 일반 객체와 마찬가지로 new Date()를 사용하여 Date 객체를 생성할 수 있고, When도 생성할 수 있습니다. 일부 초기화 매개변수를 전달합니다.

new Date()

매개변수가 없는 생성 사례:

let date = new Date(2022,5,22,20,35,33)console.log(date.getHours(),date.getUTCHours())
코드 실행 결과는 다음과 같습니다. 🎜🎜JavaScript 날짜 객체 날짜(요약 공유)🎜🎜단순히 코드가 실행되는 특정 시간을 출력하는 것입니다. 여기에 표시된 것은 입니다. 2022년 6월 22일 19시 25분 24초. 🎜

new Date(milliseconds)

🎜 밀리초 매개변수가 있는 날짜 객체를 생성합니다. 여기서 밀리초는 1970년 1월 1일 이후의 날짜를 나타냅니다. UTC+0 이후의 밀리초(1밀리초 = 1/1000초) 🎜
let date = new Date(2022,5,38)//注意这里的38console.log(date)
🎜코드 실행 결과: 🎜🎜JavaScript 날짜 객체 날짜(요약 공유)🎜 🎜밀리초는 1970년 1월 1일 00:00:00 이후 경과된 밀리초 수 또는 타임스탬프라고 합니다. 🎜🎜타임스탬프는 날짜를 간단히 디지털로 표현한 것입니다. 우리는 일반적으로 날짜를 생성할 때 new Date(milliseconds)를 사용합니다. 날짜 Date 객체가 이미 있는 경우 date.getTime()을 사용하여 날짜에 해당하는 타임스탬프를 가져올 수 있습니다. 🎜🎜🎜참고: 🎜🎜중국은 Zone 8에 있으므로 위 예의 시간은 00:00:00이 아니라 08:00:00🎜

1970년 이전 시간인가요?

🎜타임 스탬프는 정수일 뿐만 아니라 음수이기도 합니다. 예: 🎜
let date = new Date(2022,5,23)//当前时间是2022-6-23date.setDate(date.getDate() + 8)//计算八天后的时间console.log(date)
🎜코드 실행 결과: 🎜🎜JavaScript 날짜 객체 날짜(요약 공유)🎜

new Date(date_str)

🎜 생성 시간마다 타임스탬프를 사용하면 불편할 수 있습니다. 왜냐하면 우표 계산이 아직 좀 어렵거든요. 🎜🎜시간 문자열을 사용하여 시간을 생성할 수도 있습니다. 예: 🎜
let date = new Date()console.log(+date)
🎜코드 실행 결과: 🎜🎜JavaScript 날짜 객체 날짜(요약 공유)🎜

새 날짜(년, 월, 일, 시, 분, 초, ms)

  • 연도 ——4자리 숫자여야 합니다. 🎜
  • ——[0,11], 0은 🎜
  • 날짜 - 날짜, 기본값은 1입니다. 🎜
  • 시간/분/초/ms - 기본값은 0입니다. 🎜
🎜예: 🎜
let date1 = new Date(2022,5,23)let date2 = new Date(2022,5,24)console.log(`时间差为${date2-date1}ms`)
🎜코드 실행 결과: 🎜🎜JavaScript 날짜 객체 날짜(요약 공유)🎜🎜또한 밀리초 수를 지정할 수도 있습니다: 🎜
let begin = Date.now()for(let i = 1;i<h2 id="strong-Date-객체의-방법-strong"><strong>Date 객체의 방법</strong></h2>🎜 <code>DateObject, <code>Date</code> 객체에 내장된 메소드를 통해 연도, 월, 날짜 등과 같은 시간의 일부를 가져올 수 있습니다. 🎜<h3 id="strong-날짜-콘텐츠-가져오기-strong"><strong>날짜 콘텐츠 가져오기</strong></h3>🎜예를 들어 날짜 <code>date</code>가 있습니다: 🎜<pre class="brush:php;toolbar:false">let ms = Date.parse('2022-06-23T19:38:30.777+08:00')//时间戳let date = new Date(ms)console.log(date)
  1. getFullYear() code> 연도를 가져옵니다. <code>date.getFullYear()2022를 반환합니다. 🎜
  2. getMonth() 월, 날짜를 가져옵니다. .getMonth() 6월인 5를 반환합니다. 🎜
  3. getDate() 현재 날짜를 가져옵니다. 월, date.getDate()22를 반환합니다.🎜
  4. getDay() 현재 시간이 있는 요일을 가져옵니다. date.getDay() code>는 <code>3을 반환합니다. 🎜🎜🎜🎜참고: 🎜
    • 以上日期都是已于当地日期的,比如我这里是中国的时区
    • 获取年份一定要用getFullYeargetYear会返回两位数的年份

    我们也可以获得0时区的时间,也就是UTC时间,分别对应getUTCFullYear()getUTCMonth()getUTCDay等。只需要在get后插入UTC即可。

    举个例子:

    let date = new Date(2022,5,22,20,35,33)console.log(date.getHours(),date.getUTCHours())

    代码执行结果:

    JavaScript 날짜 객체 날짜(요약 공유)

    夜里也可以看出,中国时区和0时区相差8小时。

    1. getTime()返回日期的时间戳,方法没有UTC模式;
    2. getTimezoneOffset()返回本地时区和0时区相差的时间,以分钟为单位,并且没有UTC模式;

    设置日期内容

    我们还可以通过Date对象的方法设置日期中的某一部分:

    • setFullYear(year, [month], [date])设置年份(月份、日)
    • setMonth(month, [date])设置月份(日)
    • setDate(date)设置日期(月份的第几天)
    • setHours(hour, [min], [sec], [ms])设置小时(分、秒、毫秒)
    • setMinutes(min, [sec], [ms])设置分钟(秒、毫秒)
    • setSeconds(sec, [ms])设置秒(毫秒)
    • setMilliseconds(ms)设置毫秒
    • setTime(milliseconds)(使用自 1970-01-01 00:00:00 UTC+0 以来的毫秒数来设置整个日期)

    以上函数中只有setTime()没有UTC变体。

    日期的自动校准

    JavaScriptDate具备自动校准功能,这为我们针对时间的计算提供了极大的方便。

    例如:

    let date = new Date(2022,5,38)//注意这里的38console.log(date)

    代码的执行结果:

    屏幕截图 2022-06-23 185419

    从执行结果我们可以看出"2022年6月38号"并没有使程序出现错误,而是将日期转成了”2022年7月8号“。

    以上案例验证了,在JavaScript中,超出范围的日期会被Date对象自动分配。这样我们就可以非常方便的使用Date对象进行日期的计算。

    例如,我们可以在日期上对年、月、日进行加减法运算:

    let date = new Date(2022,5,23)//当前时间是2022-6-23date.setDate(date.getDate() + 8)//计算八天后的时间console.log(date)

    代码执行结果:

    JavaScript 날짜 객체 날짜(요약 공유)

    同样的,我们也可以使用date.setSeconds()方法已秒为单位计算日期。

    日期转为数字、日期差值

    日期Date转为数字的结果和使用date.getTime()的返回值相同,都是毫秒为单位的数值:

    let date = new Date()console.log(+date)

    代码执行结果:

    JavaScript 날짜 객체 날짜(요약 공유)

    既然时间的本质就是数字,我们也可以进行时间差计算,并且以ms(毫秒)为单位。

    例如:

    let date1 = new Date(2022,5,23)let date2 = new Date(2022,5,24)console.log(`时间差为${date2-date1}ms`)

    代码执行结果为:

    JavaScript 날짜 객체 날짜(요약 공유)

    Date.now()

    如果我们希望获得当前时间,更优的做法是使用Date.now()方法。这个方法会返回当前时间的时间戳,同时不需要创建额外的Date对象,这对内存开销、垃圾回收都是有好处的,而且代码更简洁。

    举个栗子:

    let begin = Date.now()for(let i = 1;i<p>代码执行结果:</p><p><img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/067/2e91502ffdbd23d1af26c248feabbead-11.png?x-oss-process=image/resize,p_40" class="lazy" alt="JavaScript 날짜 객체 날짜(요약 공유)"></p><h3 id="Date-parse">Date.parse()</h3><p><code>Date.parse()</code>方法可以读取一个日期字符串,并转为时间戳,但是字符串必须遵守一定的规则:<code>YYYY-MM-DDTHH:mm:ss.sssZ</code>。</p>
    • YYYY-MM-DD对应年-月-日
    • T属于分隔符
    • HH:mm:ss.sss对应时:分:秒.毫秒
    • Z可以是+-hh:mm格式的时区。单个字符Z表示UTC+0

    字符串可以使用省略写法,例如:YYYY-MM-DDYYYY-MMYYYY

    举个小李子:

    let ms = Date.parse('2022-06-23T19:38:30.777+08:00')//时间戳let date = new Date(ms)console.log(date)

    代码执行结果:

    JavaScript 날짜 객체 날짜(요약 공유)

    Summary

    1. JavaScriptDate 개체를 사용하여 시간을 처리합니다. new Date() JavaScript使用Date对象处理时间:new Date()
    2. 月份从0开始计算
    3. Date具有很多实用的方法,我们可以获取时间中的某一段;
    4. Date对象会自动校准,我们可以直接对日期进行加减法;
    5. Date.now()
    6. 월은 0

    부터 시작합니다. code> 날짜

    에는 다양한 실용적인 방법이 있으며, 특정 기간을 얻을 수 있습니다. 날짜 개체는 자동으로 보정되며 날짜를 직접 더하고 뺄 수 있습니다. > Date.now()
  5. 는 현재 시간을 효율적으로 얻을 수 있습니다. [관련 권장 사항: 🎜javascript 비디오 튜토리얼🎜, 🎜웹 프론트 엔드🎜]🎜

위 내용은 JavaScript 날짜 객체 날짜(요약 공유)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 CSDN에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
Python vs. JavaScript : 개발자를위한 비교 분석Python vs. JavaScript : 개발자를위한 비교 분석May 09, 2025 am 12:22 AM

Python과 JavaScript의 주요 차이점은 유형 시스템 및 응용 프로그램 시나리오입니다. 1. Python은 과학 컴퓨팅 및 데이터 분석에 적합한 동적 유형을 사용합니다. 2. JavaScript는 약한 유형을 채택하며 프론트 엔드 및 풀 스택 개발에 널리 사용됩니다. 두 사람은 비동기 프로그래밍 및 성능 최적화에서 고유 한 장점을 가지고 있으며 선택할 때 프로젝트 요구 사항에 따라 결정해야합니다.

Python vs. JavaScript : 작업에 적합한 도구 선택Python vs. JavaScript : 작업에 적합한 도구 선택May 08, 2025 am 12:10 AM

Python 또는 JavaScript를 선택할지 여부는 프로젝트 유형에 따라 다릅니다. 1) 데이터 과학 및 자동화 작업을 위해 Python을 선택하십시오. 2) 프론트 엔드 및 풀 스택 개발을 위해 JavaScript를 선택하십시오. Python은 데이터 처리 및 자동화 분야에서 강력한 라이브러리에 선호되는 반면 JavaScript는 웹 상호 작용 및 전체 스택 개발의 장점에 없어서는 안될 필수입니다.

파이썬 및 자바 스크립트 : 각각의 강점을 이해합니다파이썬 및 자바 스크립트 : 각각의 강점을 이해합니다May 06, 2025 am 12:15 AM

파이썬과 자바 스크립트는 각각 고유 한 장점이 있으며 선택은 프로젝트 요구와 개인 선호도에 따라 다릅니다. 1. Python은 간결한 구문으로 데이터 과학 및 백엔드 개발에 적합하지만 실행 속도가 느립니다. 2. JavaScript는 프론트 엔드 개발의 모든 곳에 있으며 강력한 비동기 프로그래밍 기능을 가지고 있습니다. node.js는 풀 스택 개발에 적합하지만 구문은 복잡하고 오류가 발생할 수 있습니다.

JavaScript의 핵심 : C 또는 C에 구축 되었습니까?JavaScript의 핵심 : C 또는 C에 구축 되었습니까?May 05, 2025 am 12:07 AM

javaScriptisNotBuiltoncorc; it'SangretedLanguageThatrunsonOngineStenWrittenInc .1) javaScriptWasDesignEdasAlightweight, 해석 hanguageforwebbrowsers.2) Endinesevolvedfromsimpleplemporectreterstoccilpilers, 전기적으로 개선된다.

JavaScript 응용 프로그램 : 프론트 엔드에서 백엔드까지JavaScript 응용 프로그램 : 프론트 엔드에서 백엔드까지May 04, 2025 am 12:12 AM

JavaScript는 프론트 엔드 및 백엔드 개발에 사용할 수 있습니다. 프론트 엔드는 DOM 작업을 통해 사용자 경험을 향상시키고 백엔드는 Node.js를 통해 서버 작업을 처리합니다. 1. 프론트 엔드 예 : 웹 페이지 텍스트의 내용을 변경하십시오. 2. 백엔드 예제 : node.js 서버를 만듭니다.

Python vs. JavaScript : 어떤 언어를 배워야합니까?Python vs. JavaScript : 어떤 언어를 배워야합니까?May 03, 2025 am 12:10 AM

Python 또는 JavaScript는 경력 개발, 학습 곡선 및 생태계를 기반으로해야합니다. 1) 경력 개발 : Python은 데이터 과학 및 백엔드 개발에 적합한 반면 JavaScript는 프론트 엔드 및 풀 스택 개발에 적합합니다. 2) 학습 곡선 : Python 구문은 간결하며 초보자에게 적합합니다. JavaScript Syntax는 유연합니다. 3) 생태계 : Python에는 풍부한 과학 컴퓨팅 라이브러리가 있으며 JavaScript는 강력한 프론트 엔드 프레임 워크를 가지고 있습니다.

JavaScript 프레임 워크 : 현대적인 웹 개발 파워JavaScript 프레임 워크 : 현대적인 웹 개발 파워May 02, 2025 am 12:04 AM

JavaScript 프레임 워크의 힘은 개발 단순화, 사용자 경험 및 응용 프로그램 성능을 향상시키는 데 있습니다. 프레임 워크를 선택할 때 : 1. 프로젝트 규모와 복잡성, 2. 팀 경험, 3. 생태계 및 커뮤니티 지원.

JavaScript, C 및 브라우저의 관계JavaScript, C 및 브라우저의 관계May 01, 2025 am 12:06 AM

서론 나는 당신이 이상하다는 것을 알고 있습니다. JavaScript, C 및 Browser는 정확히 무엇을해야합니까? 그들은 관련이없는 것처럼 보이지만 실제로는 현대 웹 개발에서 매우 중요한 역할을합니다. 오늘 우리는이 세 가지 사이의 밀접한 관계에 대해 논의 할 것입니다. 이 기사를 통해 브라우저에서 JavaScript가 어떻게 실행되는지, 브라우저 엔진의 C 역할 및 웹 페이지의 렌더링 및 상호 작용을 유도하기 위해 함께 작동하는 방법을 알게됩니다. 우리는 모두 JavaScript와 브라우저의 관계를 알고 있습니다. JavaScript는 프론트 엔드 개발의 핵심 언어입니다. 브라우저에서 직접 실행되므로 웹 페이지를 생생하고 흥미롭게 만듭니다. 왜 Javascr

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구