programing

날짜를 타임스탬프로 변환하는 방법

sourcetip 2022. 10. 18. 22:48
반응형

날짜를 타임스탬프로 변환하는 방법

만, 은 「Timestamp」입니다.입력 내용은 다음과 같습니다.26-02-2012나는 사용했다.

new Date(myDate).getTime();

NaN이래.이걸 어떻게 변환하는지 아는 사람 있어요?

문자열을 여러 부분으로 분할하여 날짜 생성자에게 직접 제공합니다.

업데이트:

var myDate = "26-02-2012";
myDate = myDate.split("-");
var newDate = new Date( myDate[2], myDate[1] - 1, myDate[0]);
console.log(newDate.getTime());

이 함수는 Date.parse() 메서드를 사용하며 커스텀로직은 필요 없습니다.

function toTimestamp(strDate){
   var datum = Date.parse(strDate);
   return datum/1000;
}
alert(toTimestamp('02/13/2009 23:31:30'));

이 리팩터링된 코드가 그것을 할 것이다.

let toTimestamp = strDate => Date.parse(strDate)

이것은 ie8-을 제외한 모든 최신 브라우저에서 작동합니다.

여기에는 두 가지 문제가 있습니다.먼저 get Time을 호출할 수 있는 것은 날짜의 인스턴스뿐입니다.새 날짜를 대괄호로 묶거나 변수에 할당해야 합니다.

둘째, 적절한 형식으로 문자열을 전달해야 합니다.

작업 예:

(new Date("2012-02-26")).getTime();

현재 타임스탬프를 찾으러 오신 경우

var date      = new Date();
var timestamp = date.getTime();

또는 간단히 말하면

new Date().getTime();
/* console.log(new Date().getTime()); */

바꾸기만 됩니다.-,:

new Date(2012,01,26).getTime(); // 02 becomes 01 because getMonth() method returns the month (from 0 to 11)

고객님의 경우:

var myDate="26-02-2012";
myDate=myDate.split("-");
new Date(parseInt(myDate[2], 10), parseInt(myDate[1], 10) - 1 , parseInt(myDate[0]), 10).getTime();

추신 영국 로케일은 여기서 중요하지 않습니다.

(ISO) 날짜를 Unix 타임스탬프로 변환하기 위해 필요한 것보다 3자 긴 타임스탬프를 갖게 되었습니다.그래서 내 연도는 대략 50,000...

안 되었다: 1000으로 나누지 않을 수 없었다.new Date('2012-02-26').getTime() / 1000

function getTimeStamp() {
       var now = new Date();
       return ((now.getMonth() + 1) + '/' + (now.getDate()) + '/' + now.getFullYear() + " " + now.getHours() + ':'
                     + ((now.getMinutes() < 10) ? ("0" + now.getMinutes()) : (now.getMinutes())) + ':' + ((now.getSeconds() < 10) ? ("0" + now
                     .getSeconds()) : (now.getSeconds())));
}

수 타임스탬프를 다음 yyyymmddHHMMSS

> (new Date()).toISOString().replace(/[^\d]/g,'')              // "20190220044724404"
> (new Date()).toISOString().replace(/[^\d]/g,'').slice(0, -3) // "20190220044724"
> (new Date()).toISOString().replace(/[^\d]/g,'').slice(0, -9) // "20190220"

사예 : 백업파파파 。 /my/path/my.file.js.20190220

.Date처리할 오브젝트가 지정됩니다.직접 해석해야 합니다.Moment와 같은 날짜 해석 라이브러리를 사용합니다.JS 또는 이전 DateJ(현재는 유지되지 않음) 또는 올바른 형식으로 마사지합니다(예:2012-02-29하기 전에 )를 참조해 주세요Date해석할 수 있습니다.

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★.NaN : ★★★★★★★★★★★★★★★★★.new Date(...)않은 문자열을 하려면 , 「」가 됩니다.Date하지 않은날짜로 ([오브젝트])new Date("29-02-2012").toString()"Invalid date"의 발신( )getTime()가 반환한다.NaN.

/**
 * Date to timestamp
 * @param  string template
 * @param  string date
 * @return string
 * @example         datetotime("d-m-Y", "26-02-2012") return 1330207200000
 */
function datetotime(template, date){
    date = date.split( template[1] );
    template = template.split( template[1] );
    date = date[ template.indexOf('m') ]
        + "/" + date[ template.indexOf('d') ]
        + "/" + date[ template.indexOf('Y') ];

    return (new Date(date).getTime());
}

아래 코드는 현재 날짜를 타임스탬프로 변환합니다.

var currentTimeStamp = Date.parse(new Date());
console.log(currentTimeStamp);

첫 번째 답변은 괜찮지만, 리액트 타입의 스크립트를 사용하는 것은 나에게 있어서 분할(')로 인해 불만을 제기할 수 있는 방법이 더 효과적이었다.

parseInt((new Date("2021-07-22").getTime() / 1000).toFixed(0))

내가 기꺼이 도와줄게.

경우에 따라서는 "2022-06-29 15:16:21"과 같이 날짜 형식이 완고한 날짜도 여전히 null 또는 NaN을 얻을 수 있습니다.빈칸에 'T'자를 넣어 문제를 해결했습니다.

const inputDate = "2022-06-29 15:16:21";
const newInputDate = inputDate.replace(" ", "T");

const timeStamp = new Date(newInputDate).getTime();

그리고 이건 나한테 잘 먹혔어!건배!

아래 방정식을 사용하려면 이 표준 날짜 형식 YYY-MM-DD여야 합니다.2020-04-24 16:51:56 또는 2020-04-24T16:51:56+05:30과 같이 시간이 있을 수 있습니다.정상적으로 동작합니다만, 날짜 형식은 이 YYY-MM-DD 만으로 해 주세요.

var myDate = "2020-04-24";
var timestamp = +new Date(myDate)

사용할 수 있습니다.valueOf방법

new Date().valueOf()

그림은 천 마디 말을 한다:)

여기서는 현재 날짜를 타임스탬프로 변환하고 타임스탬프를 캡처하여 현재 날짜로 변환합니다.날짜를 타임스탬프로 변환하는 방법과 타임스탬프를 현재 날짜로 변환하는 방법을 보여 줍니다.

여기에 이미지 설명 입력

다른 개발자에 의해 답변이 제공되었지만, 다음과 같이 사용자 정의 함수를 만들지 않고도 내 방식대로 즉시 이 작업을 수행할 수 있습니다.

var timestamp = Date.parse("26-02-2012".split('-').reverse().join('-'));
alert(timestamp); // returns 1330214400000

단순히 몇 가지 계산을 할 수 있습니다.Date오브젝트는 타임스탬프를number. 이것은 콤팩트 표기법에 도움이 됩니다.이 방법은 캐스트 번호를 변환하는 데도 효과가 있기 때문에 기억하기 가장 쉬운 방법입니다.string으로 되돌아가다number종류들.

let d = new Date();
console.log(d, d * 1);

시간 추가가 필요한 경우 이 방법이 효과적입니다.new Date('2021-07-22 07:47:05.842442+00').getTime()

이것도 시간 없이 동작할 수 있습니다.new Date('2021-07-22 07:47:05.842442+00').getTime()

이것도 작동하지만 시간을 받아들일 수 없습니다.new Date('2021/07/22').getTime()

그리고 마지막으로 모든 것이 작동하지 않으면 이것을 사용한다.new Date(year, month, day, hours, minutes, seconds, milliseconds)

카운트가 시작되는 월에 대한 참고0그렇게Jan === 0그리고.Dec === 11

가장 간단하고 정확한 방법은 날짜 전에 단항 연산자를 추가하는 것입니다.

console.log(`Time stamp is: ${Number(+new Date())}`)

주의사항

Date.parse ("2022-08-04T04:02:10.909Z")

1659585730909

Date.parse (신규 Date ("2022-08-04T04:02:10.909Z"))

1659585730000

언급URL : https://stackoverflow.com/questions/9873197/how-to-convert-date-to-timestamp

반응형