Moment: moment.utc("2016-07-01").year(2013).toString()์„ ํ˜ธ์ถœํ•˜๋ฉด ์ž˜๋ชป๋œ ๋‚ ์งœ๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2017๋…„ 10์›” 13์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: moment/moment

๋ฌธ์ œ์— ๋Œ€ํ•œ ์„ค๋ช… ๋ฐ ์žฌํ˜„ ๋‹จ๊ณ„:

๋‚ ์งœ๋ฅผ ๊ณผ๊ฑฐ ๋‚ ์งœ๋กœ ์„ค์ •ํ•˜๊ณ  ์—ฐ๋„๋ฅผ ์•„๋ฌด๊ฑฐ๋‚˜ ์„ค์ •ํ•˜๋ฉด ์ถœ๋ ฅ ๋‚ ์งœ๊ฐ€ ์›”๋ง์ด ๋˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.

๋‹น์‹ ์ด ํ˜ธ์ถœํ•˜๋ฉด moment.utc("2016-07-01").year(2013).toString() ๋‹น์‹ ์€ ์–ป์„ ๊ฒƒ์ด๋‹ค Wed Jul 31 2013 00:00:00 GMT+0000 . 7์›” 1์ผ์ด ์•„๋‹ˆ๋ผ 7์›” 31์ผ์ž„์„ ์ฃผ๋ชฉํ•˜์‹ญ์‹œ์˜ค.

ํ™˜๊ฒฝ:

๋‚˜๋Š” ์ด๊ฒƒ์„ Chrome 61๊ณผ Node 5.10.1์—์„œ ์žฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋„์›€์ด ๋  ์ˆ˜ ์žˆ๋Š” ๊ธฐํƒ€ ์ •๋ณด:

์ด๊ฒƒ์€ 2016๋…„์˜ ๋‚ ์งœ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ๋ฌธ์ œ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. moment.utc("2015-07-01").year(2013).toString() ๋ฅผ ์‹œ๋„ํ•˜๋ฉด ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ด๊ฒƒ์ด ์ˆœ๊ฐ„ 2.19.0+ ์ด์ „์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹˜์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 2.19.0 ์ด์ƒ์—์„œ๋งŒ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

๋ฌธ์ œ๋ฅผ ๋ณด๊ณ ํ•˜๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ ์ค‘์ธ ํ™˜๊ฒฝ์—์„œ ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์ถœ๋ ฅ์„ ํฌํ•จํ•˜์‹ญ์‹œ์˜ค.

console.log( (new Date()).toString())
console.log((new Date()).toLocaleString())
console.log( (new Date()).getTimezoneOffset())
console.log( navigator.userAgent)
console.log(moment.version)
Thu Oct 12 2017 23:10:36 GMT-0300 (ADT)
10/12/2017, 11:10:36 PM
180
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36
2.19.1

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@HolgerFrank ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ๊ณผ ํ•จ๊ป˜ PR์„ ์ œ์ถœํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋นจ๋ฆฌ ๊ณ ์ณ์•ผ ํ•  ์•„์ฃผ ์น˜๋ช…์ ์ธ ๋ฒ„๊ทธ์ž…๋‹ˆ๋‹ค..

ํŽธ์ง‘: PR์„ ์ œ์ถœํ–ˆ๋Š”๋ฐ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  4 ๋Œ“๊ธ€

๋ฒ„์ „ 2.19.0์—์„œ set$1() ํ•จ์ˆ˜๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•ด ์œค๋…„ ์ˆœ๊ฐ„์— ์ƒˆํ•ด๋ฅผ ์„ค์ •ํ•˜๋ฉด ํ•ญ์ƒ ์›”์˜ ๋งˆ์ง€๋ง‰ ๋‚ ์„ ๋‚ ์งœ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

moment('2010-02-25').year(2017) // result is: 2017-02-28
moment('2010-10-15').year(2017) // result is: 2017-10-31

ํ˜„์žฌ(์ž˜๋ชป๋œ) ๊ตฌํ˜„

function set$1 (mom, unit, value) {
    if (mom.isValid() && !isNaN(value)) {
        if (unit === 'FullYear' && isLeapYear(mom.year())) {
            mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value, mom.month(), daysInMonth(value, mom.month()));
        }
        else {
            mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);
        }
    }
}

ํŠน๋ณ„ํ•œ ๊ฒฝ์šฐ๋Š” ์œค๋…„์˜ 2์›” 29์ผ์—๋งŒ ํ•„์š”ํ•˜๋ฏ€๋กœ ์˜ฌ๋ฐ”๋ฅธ ๊ตฌํ˜„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

function set$1 (mom, unit, value) {
    if (mom.isValid() && !isNaN(value)) {
        if (unit === 'FullYear' && isLeapYear(mom.year()) && mom.month() === 1 && mom.date() === 29) {
            mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value, 1, daysInMonth(value, 1));
        }
        else {
            mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);
        }
    }
}

์ด๊ฒƒ์€ ์น˜๋ช…์ ์ธ ์˜ค๋ฅ˜์ด๋ฏ€๋กœ ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ ์ˆ˜์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. "์ด๊ฒƒ์ด 1.19.0+ ์ด์ „์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹˜์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 1.19.0+์˜ ๋ฌธ์ œ์ผ ๋ฟ์ž…๋‹ˆ๋‹ค."๋ผ๊ณ  ์ผ์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” 2.19๋ฅผ ์˜๋ฏธํ–ˆ์Šต๋‹ˆ๋‹ค... ์›๋ž˜ ๊ฒŒ์‹œ๋ฌผ์—์„œ ์ด๊ฒƒ์„ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

@HolgerFrank ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ๊ณผ ํ•จ๊ป˜ PR์„ ์ œ์ถœํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋นจ๋ฆฌ ๊ณ ์ณ์•ผ ํ•  ์•„์ฃผ ์น˜๋ช…์ ์ธ ๋ฒ„๊ทธ์ž…๋‹ˆ๋‹ค..

ํŽธ์ง‘: PR์„ ์ œ์ถœํ–ˆ๋Š”๋ฐ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

PR์„ ์œ„ํ•ด ๋งˆ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰