[javascript] PHP의 strtotime ()과 동등한 Javascript?

PHP에서는를 사용하여 영어 텍스트 날짜 / 시간 설명을 적절한 날짜로 쉽게 변환 할 수 있습니다 strtotime().

Javascript에 비슷한 것이 있습니까?



답변

이 기사를 찾아서 튜토리얼을 시도했습니다. 기본적으로 날짜 생성자를 사용하여 날짜를 구문 분석 한 다음 getTime()메서드 에서 초를 가져올 수 있습니다.

var d=new Date("October 13, 1975 11:13:00");
document.write(d.getTime() + " milliseconds since 1970/01/01");

작동합니까?


답변

네, 그렇습니다. 그리고 모든 주요 브라우저에서 지원됩니다.

var ts = Date.parse("date string");

유일한 차이점은이 함수는 초 대신 밀리 초를 반환하므로 결과를 1000으로 나누어야합니다.

JavaScript가 구문 분석 할 수있는 유효한 형식을 확인하십시오.


답변

확인 자바 스크립트에서 PHP의 한 strtotime ()의 구현을!

나는 그것이 내가 던진 모든 것에 대해 PHP와 동일하게 작동한다는 것을 발견했습니다.

업데이트 : 버전 1.0.2에 따른이 기능은이 경우를 처리 할 수 ​​없습니다 : '2007:07:20 20:52:45'
( :연도 및 월 구분자 참고 )

2018 업데이트 :

이제 npm모듈 로 사용할 수 있습니다 ! 간단히 npm install locutus그리고 소스에서 :

var strtotime = require('locutus/php/datetime/strtotime');


답변

나는 PHP에서 strtotime ()을 질투하지만 순간을 사용하여 자바 스크립트에서 내 작업을 수행합니다. PHP에서만큼 달콤하지는 않지만 트릭도 깔끔하게 수행합니다.

// first day of the month
var firstDayThisMonth = moment(firstDayThisMonth).startOf('month').toDate();

사용하여 앞뒤로 이동 subtract()add()함께 endOf()과를 startOf():

// last day of previous month
var yesterMonthLastDay = moment(yesterMonthLastDay).subtract(1,'months').endOf('month').toDate();


답변

문자열 구문 분석에 대한 브라우저 지원 이 일치하지 않습니다 . 어떤 형식이 지원되어야하는지에 대한 사양이 없기 때문에 일부 브라우저에서 작동하는 것이 다른 브라우저에서는 작동하지 않습니다.

시도 Moment.js를 – 그것은을 위해 크로스 브라우저 기능을 제공 일자를 구문 분석 :

var timestamp = moment("2013-02-08 09:30:26.123");
console.log(timestamp.milliseconds()); // return timestamp in milliseconds
console.log(timestamp.second()); // return timestamp in seconds


답변

유사한 동작을 제공하는 모듈이 거의 없지만 PHP의 strtotime과 똑같지는 않습니다. 몇 가지 대안 중에서 date-util 이 최상의 결과를 산출한다는 것을 알았습니다 .


답변

var strdate = new Date('Tue Feb 07 2017 12:51:48 GMT+0200 (Türkiye Standart Saati)');
var date = moment(strdate).format('DD.MM.YYYY');
$("#result").text(date); //07.02.2017
<script src="https://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.js"></script>

<div id="result"></div>