답변:
요청한 것처럼 moment.js를 사용하면 unix
초 단위로 유닉스 타임 스탬프를 허용 하는 방법이 있습니다.
var dateString = moment.unix(value).format("MM/DD/YYYY");
calendar
기능은 훌륭 하지만 ( docs here ) OP가 요청한 형식이 아닙니다.
그것만
moment.unix(date).toDate();
조금 늦을 수도 있지만 이와 같은 새로운 문제에 대해서는이 코드를 사용합니다.
moment(timestamp, 'X').format('lll');
필요에 맞게 형식을 변경하고 다음과 같이 시간대를 추가 할 수 있습니다.
moment(timestamp, 'X').tz(timezone).format('lll');
x
ms 유닉스 타임 스탬프 에는 소문자 를 사용하십시오 . 여기에 설명서
이 예제와 같이 수정했습니다.
$scope.myCalendar = new Date(myUnixDate*1000);
<input date-time ng-model="myCalendar" format="DD/MM/YYYY" />
$(document).ready(function() {
var value = $("#unixtime").val(); //this retrieves the unix timestamp
var dateString = moment(value, 'MM/DD/YYYY', false).calendar();
alert(dateString);
});
엄격 모드는 대부분의 상황에서 더 잘 작동하지만 용서 모드는 순간에 전달되는 문자열의 형식이 다를 때 매우 유용 할 수 있습니다.
이후 릴리스에서 파서는 기본적으로 엄격 모드를 사용합니다. 엄격 모드에서는 구분 기호를 포함하여 지정된 형식과 정확히 일치하도록 순간 입력이 필요합니다. 엄격 모드는 모멘트 기능에 세 번째 매개 변수로 true를 전달하여 설정됩니다.
용서 모드가 유용한 일반적인 시나리오는 타사 API가 날짜를 제공하고 해당 API의 날짜 형식이 변경 될 수있는 상황입니다. API가 'YYYY-MM-DD'형식으로 날짜를 전송 한 다음 나중에 'MM / DD / YYYY'형식으로 변경한다고 가정합니다.
엄격 모드에서 다음 코드는 '잘못된 날짜'를 표시합니다.
moment('01/12/2016', 'YYYY-MM-DD', true).format()
"Invalid date"
형식 문자열을 사용하는 용서 모드에서 잘못된 날짜가 표시됩니다.
moment('01/12/2016', 'YYYY-MM-DD').format()
"2001-12-20T00:00:00-06:00"
다른 방법은
$(document).ready(function() {
var value = $("#unixtime").val(); //this retrieves the unix timestamp
var dateString = moment.unix(value).calendar();
alert(dateString);
});
moment(timestamp).format('''any format''')