>  기사  >  웹 프론트엔드  >  자바스크립트에서 시간 문자열과 타임스탬프 간의 변환 방식 분석

자바스크립트에서 시간 문자열과 타임스탬프 간의 변환 방식 분석

不言
不言원래의
2018-09-14 15:51:211605검색

이 기사의 내용은 JavaScript에서 시간 문자열과 타임스탬프 간의 변환 방법에 대한 내용입니다. 이는 특정 참조 값을 가지고 있으므로 도움이 될 수 있습니다.

해결해야 할 문제

JS 개발에 문제가 발생했습니다. 프런트 엔드 vue의 UI 구성 요소에서 생성된 시간 문자열 형식은 2018-9-12 9:11:23인 반면 백엔드는 2018-09만 인식할 수 있습니다. -12 09:11 :23과 같은 시간 문자열의 경우 시간 문자열 형식을 변환해야 하며, 한 자리 값 앞에 0을 추가해야 합니다.

해결 방법

  1. 먼저 기존 시간 문자열을 타임스탬프로 변환하세요

  2. 타임스탬프를 사용하여 Date 개체를 만든 다음 Date 메서드를 사용하여 해당 연도, 월, 일, 시, 분, 초를 가져옵니다.

  3. 값은 0으로 채워지고 필수 시간 문자열

이 포함됩니다. 지식 포인트

타임스탬프 개념: 1970년 1월 1일 0시부터 지정된 날짜(문자열)까지의 밀리초 수입니다. .
날짜와 시간을 처리하려면 JS에서 Date 객체를 사용해야 합니다. 사용되는 메소드는 다음과 같습니다.

Date.parse(timestr): 返回timestr的时间戳
var time = newDate(timestamp)   利用时间戳创建Date对象

JavaScript Date 객체의 메소드는 http://www.w3school.com.cn/js를 참조하세요. ...
시간 문자열 필요에 따라 자체 조립됩니다. 0을 수정하는 방법을 찾아야 합니다. 온라인에는 여러 가지 방법이 있습니다.

다음은 변환 과정입니다.

시간 문자열을 타임스탬프로 변환

//mytime是待转换时间字符串,格式:'2018-9-12 9:11:23'
dateTmp = mytime.replace(/-/g,'/')   //为了兼容IOS,需先将字符串转换为'2018/9/11 9:11:23'
timestamp = Date.parse(dateTmp)    //返回'2018-9-12 9:11:23'的时间戳

타임스탬프를 필요한 형식의 시간 문자열로 변환

    var dateFormat = function(timestamp){
        var time = newDate(timestamp)    //先将时间戳转为Date对象,然后才能使用Date的方法
        var year = time.getFullYear(),
            month = time.getMonth() + 1 ,  //月份是从0开始的
            day = time.getDate(),
            hour = time.getHours(),
            minute = time.getMinutes(),
            second = time.getSeconds()
            //add0()方法在后面定义
        return  year+'-'+this.add0(month)+'-'+ this.add0(day)+''+this.add0(hour)+':'+this.add0(minute)+':'+this.add0(second)  
        }

0을 더하는 방법 add0

0을 더하는 방법은 여러 가지가 있습니다 인터넷에서 제가 사용한 방법은 다음과 같습니다.

        var add0 = function(m){
        return m < 10 ? '0' + m: m
        }

Summary

JavaScript의 Date 객체에 대한 이해가 필요합니다.
문자열 변환 개념을 이해해야 합니다. 즉, 문자열--타임스탬프---날짜 객체---새 문자열을 저장하면 당연히 문제가 됩니다.

관련 권장사항:

js는 시간을 가져와 문자열과 timestamps_javascript 기술 간에 변환합니다

위 내용은 자바스크립트에서 시간 문자열과 타임스탬프 간의 변환 방식 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.