我试图以这种格式获取日期时间js:
2016-12-19T09:43:45.672Z
问题是我能够将时间格式设为
2016-12-19T15:04:09+05:30
使用
moment().format();
但我需要格式为第一个[如.672Z而不是+05:30]。任何建议都会有很大的帮助。
答案 0 :(得分:2)
来自documentation on the format
method:
要转义格式字符串中的字符,可以将字符包装在方括号中。
自" Z"是时区的格式标记,您需要将其转义。所以你想要的格式字符串是:
moment().format('YYYY-MM-DD[T]HH:mm:ss.SSS[Z]');
正如@VincenzoC在评论中所说,toISOString()方法也会为您提供您所追求的格式。
答案 1 :(得分:0)
使用moment.utc()以UTC时间而不是本地时间显示时间:
var dateValue = moment().toISOString();
或moment()。toISOString()以ISO格式显示字符串(格式:YYYY-MM-DDTHH:mm:ss.sssZ,时区始终为UTC):
location = getLocation();
Observable.from(users)
.flatMap(user -> return mPresenterRx.userIdAlreadyInDatabase(location, user.userId) // This returns a Observable<Boolean>
.flatMap(alreadyExists -> alreadyExists ? Observable.just(user) : null)) // Flatmap back to a user
.filter(user -> return user != null)
.take(1)
.map(user -> return combine(location, user)) // Returns a UserLocation
.subscribe(...);
答案 2 :(得分:0)
尝试一下
const start_date = '2018-09-30';
const t = moment(start_date).utc().format();
console.log(t);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
答案 3 :(得分:-1)
var dateTime = new Date("2015-06-17 14:24:36");
dateTime = moment(dateTime).format("YYYY-MM-DD HH:mm:ss");
试试这个。您应该以正确的格式提供日期。