Разница между моментом.toString() и момент.toISOString()
у меня есть чтение moment.js документ, есть moment.toISOString() функция для помогает форматировать строку в ISO8601 стандартные.
Also there have a another one reason for why we use moment.toISOString()
moment.toISOString()функция, использующая по соображениям производительности.
я не знаю toISOString() производительность лучше, чем moment.toString().Но только результат был разницей при использовании moment.toString() и moment.toISOString().
Итак, мой вопрос есть.
почему мы должны использовать
moment.toISOString()? для производительность причины?и в чем разница между
moment.toISOString()иmoment.toString()?
1 ответов
вы можете посмотреть непосредственно в исходном коде momentJS для такой проблемы :). здесь.
export function toString () {
return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');
}
export function toISOString () {
var m = this.clone().utc();
if (0 < m.year() && m.year() <= 9999) {
if ('function' === typeof Date.prototype.toISOString) {
// native implementation is ~50x faster, use it when we can
return this.toDate().toISOString();
} else {
return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]');
}
} else {
return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]');
}
}
-
toStringиспользовать.locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ')который является исходным кодом momentJS, выполненным в Javascript -
toISOString()использовать JavaScript объект Date (this.toDate().toISOString();), который компилируется и управляется вашим браузером.
собственная реализация ~50x быстрее, используйте его, когда мы можем
однако, я думаю, что такая разница не актуален для большинства проектов, но теперь вы знаете. ;)