๋ชจ๋ฉํธ ๊ฐ์ฒด(๋๋ ๋ชจ๋ฉํธ ์์ฑ์ด ์๊ณ ์ ๋ ฌ ํค์ฌ์ผ ํ๋ ๊ฐ์ฒด) ๋ชฉ๋ก์ ์ ๋ ฌํ ๋ ๋น๊ต ๊ธฐ๋ฅ์ด ํฌํจ๋์ด ์์ผ๋ฉด ์ข์ ๊ฒ์ ๋๋ค. ๋ค์๊ณผ ๊ฐ์ ์์ ์ ์ํํ ์ ์์ต๋๋ค.
array.sort(m.compare)
moment#valueOf
ํจ์๋ก ์ธํด ๋น๊ต ํจ์๋ ๊ฐ๋จํฉ๋๋ค.
var array = [
moment(),
moment().add(1, 'd'),
moment().subtract(1, 'd')
];
console.log(array.map(function (m) {
return m.format('YYYY-MM-DD')
}));
// ["2014-02-24", "2014-02-25", "2014-02-23"]
array.sort(function (a, b) {
return a - b;
});
console.log(array.map(function (m) {
return m.format('YYYY-MM-DD')
}));
// ["2014-02-23", "2014-02-24", "2014-02-25"]
๊ฐ์ฌ ํด์.
๋ช
์์ ์ผ๋ก moment#valueOf
์ฌ์ฉํ๊ณ ์์๋๋ฐ ๊ทธ๋ด ํ์๊ฐ ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
typescript๋ฅผ ์ฌ์ฉํ๋ฉด ์ด๊ฒ์ ๊ทธ๋ ๊ฒ ๊ฐ๋จํ์ง ์์ต๋๋ค. ํ์ดํ์ผ๋ก๋ a - b
๋ผ๊ณ ๋งํ ์ ์์ต๋๋ค.
๋์ ๋ค์๊ณผ ๊ฐ์ด ๋งํฉ๋๋ค.
a.isBefore(b) ? -1 : 1
๋ด๊ฐ ๊ทธ 1๊ณผ -1์ ์ฌ๋ฐ๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ์ป์๋์ง ํ์คํ์ง ์์ต๋๋ค.
typescript๋ฅผ ์ฌ์ฉํ๋ฉด ์ด๊ฒ์ ๊ทธ๋ ๊ฒ ๊ฐ๋จํ์ง ์์ต๋๋ค. ํ์ดํ์์๋ - b๋ฅผ ๋งํ ์ ์์ต๋๋ค.
a.valueOf() - b.valueOf()
๋ก moment#valueOf๋ฅผ ๋ช
์์ ์ผ๋ก ํธ์ถํ ์ ์์ต๋๋ค.
๋๋ ๋ถ๋ถ์ ์ด๋ค:
momentsArray.sort((a, b) => a.diff(b));
๋ด ์์ .
@robertmassaioli ์ฝ๋์ ์ฃผ์ํ์ธ์.
a.isBefore(b) ? -1 : 1
๋์ผํ๋ฉด ์ ์๋ฆฌ์ ์ ์งํ๋ ๋์ ๊ตํํฉ๋๋ค. ๋ณ ๊ฒ ์๋ ๊ฒ ๊ฐ์ง๋ง ๋๊ตฐ๊ฐ์๊ฒ๋ ์์์น ๋ชปํ ์ผ์ด ๋ ์๋ ์์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
moment#valueOf
ํจ์๋ก ์ธํด ๋น๊ต ํจ์๋ ๊ฐ๋จํฉ๋๋ค.