Moment: рд╕рдкреНрддрд╛рд╣ рдХреЗ рджрд┐рдиреЛрдВ рдореЗрдВ рд╕реНрдерд╛рдиреАрдп рд╕рдорд╕реНрдпрд╛рдПрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 15 рдЬреБрд▓ре░ 2017  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: moment/moment

рдореБрджреНрджреЗ рдХрд╛ рд╡рд┐рд╡рд░рдг рдФрд░ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо:
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рдореЗрдВ рд╣реИ,
moment.locale('zh_CN');
moment.weekdays(true); // lists weekdays Monday-Sunday in Chinese
рдЕрдЧрд░ рд╕рд╣реА рд╣реИ, рддреЛ рдХрд╛рд░реНрдпрджрд┐рд╡рд╕ рд╕реНрдерд╛рдиреАрдп рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреНрд░рдо рдореЗрдВ рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕реНрдерд╛рди рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИред

рддреЛ рдЕрдЧрд░ рдореИрдВ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рд▓реЛрдХреЗрд▓ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рддреЛ рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ
moment.localeData('zh_CN').weekdaysShort()
рдпрд╣ рд╣рдореЗрд╢рд╛ рд░рд╡рд┐рд╡рд╛рд░-рд╢рдирд┐рд╡рд╛рд░ рд╕реЗ рдЪреАрдиреА рдореЗрдВ рд╕рдкреНрддрд╛рд╣ рдХреЗ рджрд┐рдиреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реИ (рд╕реНрдерд╛рдиреАрдп рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреНрд░рдо рдореЗрдВ рдирд╣реАрдВ)ред рдФрд░ рдореИрдВ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдорд╛рд░реЛрд╣ рдХреЗ рд▓рд┐рдП 'рд╕рд╣реА' рдорд╛рди рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ (рддреНрд░реБрдЯрд┐ рдХреЗ рдХрд╛рд░рдг)ред

рдХреГрдкрдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╕рднреА рдЪрд░реЛрдВ рдХреЗ рдорд╛рди рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВред

рд╡рд╛рддрд╛рд╡рд░рдг:

рдЙрджрд╛рд╣рд░рдг: OSX рдкрд░ Chrome 49, Windows 7 рдкрд░ Internet Explorer 10, Ubuntu 16.0.4 рдкрд░ Node.JS 4.4.4

рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдФрд░ OS рджреЛрдиреЛрдВ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ IOT рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЬреИрд╕рд╛ рдЕрд╕рд╛рдорд╛рдиреНрдп рд╡рд╛рддрд╛рд╡рд░рдг рд╣реИред

рдЕрдиреНрдп рдЬрд╛рдирдХрд╛рд░реА рдЬреЛ рд╕рд╣рд╛рдпрдХ рд╣реЛ рд╕рдХрддреА рд╣реИ:

  • рдорд╢реАрди рдХрд╛ рд╕рдордп рдХреНрд╖реЗрддреНрд░ рд╕реЗрдЯрд┐рдВрдЧ рдЬрд┐рд╕ рдкрд░ рдХреЛрдб рдЪрд▓ рд░рд╣рд╛ рд╣реИ
  • рд╡рд╣ рд╕рдордп рдФрд░ рджрд┐рдирд╛рдВрдХ рдЬрд┐рд╕ рдкрд░ рдХреЛрдб рдЪрд▓рд╛рдпрд╛ рдЧрдпрд╛ рдерд╛
  • рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реА рдЕрдиреНрдп рд▓рд╛рдЗрдмреНрд░реЗрд░реА (рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдЗрдореНрдореБрдЯреЗрдмрд▓.рдЬреЗрдПрд╕, рдЖрджрд┐)

рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рдкрд░рд┐рд╡реЗрд╢ рдореЗрдВ рдирд┐рдореНрди рдХреЛрдб рдЪрд▓рд╛рдПрдБ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ:

console.log( (new Date()).toString())
console.log((new Date()).toLocaleString())
console.log( (new Date()).getTimezoneOffset())
console.log( navigator.userAgent)
console.log(moment.version)

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдкрд▓-рдкрд▓ рдЕрд▓рдЧ-рдерд▓рдЧ рд╣реИред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдЬрд╛рдирдХрд╛рд░реА рдпрд╣ рд╣реИ рдХрд┐ weekday рдлрд╝рдВрдХреНрд╢рди рд╕реНрдерд╛рдиреАрдп-рдЬрд╛рдЧрд░реВрдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП

const weekdays = [0, 1, 2, 3, 4, 5, 6].map(dow => moment().locale('en-gb').weekday(dow).format('dddd'))

['Sunday', 'Monday', ...] рд▓рд┐рдП en-us рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди ['Monday', 'Tuesday', ...] рд▓рд┐рдП en-gb ред

рд╕рднреА 7 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рдореНрдо, рдореИрдВ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдпрд╣ рдХрд╣ рд░рд╣реЗ рд╣реИрдВ:

moment.locale('en') //=> "en" (I don't have the locale set to zh)

// you're saying this is NOT in the right order
moment.localeData('zh_CN').weekdays(); //=> ["цШЯцЬЯцЧе", "цШЯцЬЯф╕А", "цШЯцЬЯф║М", "цШЯцЬЯф╕Й", "цШЯцЬЯхЫЫ", "цШЯцЬЯф║Ф", "цШЯцЬЯхЕн"]

//but if you change the global locale, then it is
moment.locale('zh_CN'); //=> "zh-cn"
moment.weekdays() //=> ["цШЯцЬЯцЧе", "цШЯцЬЯф╕А", "цШЯцЬЯф║М", "цШЯцЬЯф╕Й", "цШЯцЬЯхЫЫ", "цШЯцЬЯф║Ф", "цШЯцЬЯхЕн"]

рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдпрд╣ рдЖрдкрдХреЗ рдЬреИрд╕рд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рддреЛ рдпрд╣ рдХрд░рддрд╛ рд╣реИ (рд▓реЛрдХреЗрд▓рдбреЗрдЯрд╛ рд╕реАрдзреЗ рдбреЗрдЯрд╛ рдкрд░ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реЛрдЧреА рдЕрдЧрд░ рдпрд╣ рд░реАрдСрд░реНрдбрд░рд┐рдВрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╕рдВрднрд╡рддрдГ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдкреАрдЖрдИ рдирд╣реАрдВ рд╣реИ рдЧреИрд░-рд╡реИрд╢реНрд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рд▓реЛрдХреЗрд▓ рдХреЗ рд▓рд┐рдП рдЖрджреЗрд╢рд┐рдд рдХрд╛рд░реНрдпрджрд┐рд╡рд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛)ред рд▓реЗрдХрд┐рди... рдХреНрдпрд╛ рд╡реЗ рд╕рд░рдгрд┐рдпрд╛рдБ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИрдВ? рдореИрдВ рдЪреАрдиреА рдирд╣реАрдВ рдкрдврд╝рддрд╛ рдпрд╛ рдмреЛрд▓рддрд╛ рд╣реВрдВ рдЗрд╕рд▓рд┐рдП рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рд╡реЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рд╕рд╣реА рдХреНрд░рдо рдореЗрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдм рддрдХ рдореБрдЭреЗ рдХреБрдЫ рдпрд╛рдж рдирд╣реАрдВ рдЖ рд░рд╣рд╛ рд╣реИ (рдЕрдкрд░рд┐рдЪрд┐рдд рдкрд╛рддреНрд░реЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╕рдордп рд╣рдореЗрд╢рд╛ рд╕рдВрднрд╡ рд╣реИ) рд╡реЗ рдпрд╛ рддреЛ рджреЛрдиреЛрдВ рд╣реИрдВ рдпрд╛ рджреЛрдиреЛрдВ рдирд╣реАрдВ рд╣реИрдВ, рдареАрдХ рд╣реИ ?

рдпрд╣ "рдПрди-рдЬреАрдмреА" рдФрд░ "рдПрди-рдпреВрдПрд╕" рдХреЗ рд╕рд╛рде рд╕рдорд╛рди рд╣реИред

рдЕрдЧрд░ рдореЗрд░рд╛ рд▓реЛрдХреЗрд▓ 'рдПрди-рдпреВрдПрд╕' рд╣реИ рдФрд░ рдореИрдВ 'рдПрди-рдЬреАрдмреА' рд╕рдкреНрддрд╛рд╣ рдХреЗ рджрд┐рдиреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕реЙрд░реНрдЯрд┐рдВрдЧ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ, рддреЛ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд▓реЛрдХреЗрд▓ рдмрджрд▓рдиреЗ рдпрд╛ рдХреНрд░рдордмрджреНрдз рдХрд╛рд░реНрдпрджрд┐рд╡рд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рд░рдгреА рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

moment.locale('en-us')
moment.weekdays(true) // ["Sunday", "Monday", ...

moment.locale('en-gb')
moment.weekdays(true) // ["Monday", "Tuesday", ...

рдкрд░рдВрддреБ

moment.localeData('en-us').weekdays() // ["Sunday", "Monday", ...

moment.localeData('en-gb').weekdays() // ["Sunday", "Monday", ...

рдФрд░ рдирд╣реАрдВ рд╣реИ

moment.localeData('en-gb').weekdays(true)

рд╣рдореНрдо, рд╣рд╛рдБ, рдореИрдВ рдЗрд╕реЗ рдПрдХ рдмрдЧ рдХрд╣ рд░рд╣рд╛ рд╣реВрдБред

рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдЬрд╛рдирдХрд╛рд░реА рдпрд╣ рд╣реИ рдХрд┐ weekday рдлрд╝рдВрдХреНрд╢рди рд╕реНрдерд╛рдиреАрдп-рдЬрд╛рдЧрд░реВрдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП

const weekdays = [0, 1, 2, 3, 4, 5, 6].map(dow => moment().locale('en-gb').weekday(dow).format('dddd'))

['Sunday', 'Monday', ...] рд▓рд┐рдП en-us рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди ['Monday', 'Tuesday', ...] рд▓рд┐рдП en-gb ред

рдореИрдВрдиреЗ рдХреБрдЫ рдЦреБрджрд╛рдИ рдХреАред

рдПрдХ рдЕрд▓рдЧ рдлрд╝рдВрдХреНрд╢рди рд╣реИ рдЬреЛ <Moment>.weekdays рдмрдирд╛рдо <Locale>.weekdays (рдФрд░ рдЗрд╕реА рддрд░рд╣ рд╕рдкреНрддрд╛рд╣ рдХреЗ рджрд┐рдиреЛрдВ рдореЗрдВ рдиреНрдпреВрдирддрдо, рд╕рдкреНрддрд╛рд╣ рдХреЗ рджрд┐рди, рдорд╣реАрдиреЗ, рдорд╣реАрдиреЗ рдХрдо)

рдЬреИрд╕рд╛ рдХрд┐ рдбреЙрдХреНрд╕ рдореЗрдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдкрд╣рд▓реЗ рдХреЛ рд╡рд░реНрддрдорд╛рди рд▓реЛрдХреЗрд▓ рдХреЗ рдорд╣реАрдиреЛрдВ рдпрд╛ рдХрд╛рд░реНрдпрджрд┐рд╡рд╕реЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
https://momentjs.com/docs/#/i18n/listing -months-weekdays/

рджреВрд╕рд░рд╛ рд▓реЛрдХреЗрд▓ рд╕реЗ рд╣реА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
https://momentjs.com/docs/#/i18n/locale -data/

рд╣рдо рдЙрд╕реА рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдпрджрд┐рд╡рд╕реЛрдВ рдХреЛ рд╕реНрдерд╛рдиреАрдп-рд╕реЙрд░реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

  • рддреЛ, moment.localeData('en-gb').weekdays(true) рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ ['Monday', 'Tuesday', ...] )ред
  • рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЙрдЪрд┐рдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЙрд▓ рдХреНрд╖рдг рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХрддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдПрдХ рдкреАрдЖрд░ рд░рдЦрд╛ рд╣реИ - рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдЖрдк рд╕рднреА рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рд╕реЛрдорд╡рд╛рд░ рдХреЛ рд▓реМрдЯрдиреЗ рдХреЗ рд▓рд┐рдП moment().locale('en-us').weekday(0) рддрдп рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдпреЛрдЬрдирд╛ рд╣реИ рди рдХрд┐ рд░рд╡рд┐рд╡рд╛рд░?

@inbalg рдирд╣реАрдВ, рдпрд╣ рд╕рд╣реА рд╣реИ

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

ninigix picture ninigix  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dogukankotan picture dogukankotan  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

alvarotrigo picture alvarotrigo  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

benhathaway picture benhathaway  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

4rg0n picture 4rg0n  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ