Angular.js: $http POSTED JSON рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рджрд┐рдирд╛рдВрдХ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ (рд╕рдордпрдХреНрд╖реЗрддреНрд░ рдпрд╛ рдореМрд╕рдореА рдСрдлрд╝рд╕реЗрдЯ рд╣рдЯрд╛рддрд╛ рд╣реИ)

рдХреЛ рдирд┐рд░реНрдорд┐рдд 25 рдЕрдкреНрд░реИрд▓ 2016  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: angular/angular.js

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрдЧ рд╣реИред

рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрдпрд╛ рд╣реИ?

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдЪреНрдЫреА рддрд┐рдерд┐ рд╡рд╕реНрддреБ рд╣реИ рдЬреЛ рд▓реЙрдЧ рдЖрдЙрдЯ рдХрд░рддреА рд╣реИ

рд╢реБрдХреНрд░ рдЕрдкреНрд░реИрд▓ 29 2016 13:33:00 рдЬреАрдПрдордЯреА+0100 (рдмреАрдПрд╕рдЯреА)

рдЬрдм рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ $http рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред

2016-04-28T12:33:00.000Z

рддреЛ $http рдСрдмреНрдЬреЗрдХреНрдЯ рдПрдХ рдШрдВрдЯрд╛ рдШрдЯрд╛рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдмреНрд░рд┐рдЯрд┐рд╢ рд╕рдорд░ рдЯрд╛рдЗрдо BST рдХреЛ рд╕рдордп рд╕реЗ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИред рддреЛ рдпрд╣ рдЗрд╕ рдСрдлрд╝рд╕реЗрдЯ рдХреЗ рдмрд┐рдирд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИред рдЬрдм рд╣рдо рддреБрд░рдВрдд рдЗрд╕ рддрд╛рд░реАрдЦ рдХреЛ рдкрдврд╝рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддреА рд╣реИ рд▓реЗрдХрд┐рди рд╕рд┐рд╕реНрдЯрдо рдХреИрд╕реЗ рдЬрд╛рди рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдШрдВрдЯреЗ рдХреЛ рд╡рд╛рдкрд╕ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ?

рддреЛ рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╣реИ..5 рдШрдВрдЯреЗ рдЖрдЧреЗ рдХрд╣реЗрдВ рддреЛ рд╕рд┐рд╕реНрдЯрдо 5 рдШрдВрдЯреЗ рдШрдЯрд╛ рджреЗрдЧрд╛...рд╕рдордп рдЙрд╕ рд╕рдВрджрд░реНрдн рдХреЗ рдкреНрд░рддрд┐ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореИрдВ рдЗрд╕реЗ рдХреНрд░реЛрдо рдореЗрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВред рдХреЛрдгреАрдп 1.4.2

рд╕рд╛рде рд╣реА http://stackoverflow.com/questions/24356475/angular-js-date-changes-when-submitting-to-http-timezone-issue

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

рдкрд╣рд▓реЗ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рдирд╛ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ рдХрд┐ рджрд┐рдирд╛рдВрдХ рд╡рд╕реНрддреБ рдореЗрдВ рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рдЕрдм рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рдирд╛ рд╕рд╣реА рд╣реИ: рдореБрд╕реНрдХрд░рд╛рд╣рдЯ: рдПрдХ Date рд╡рд╕реНрддреБ _"рд╕рдордп рдореЗрдВ рдПрдХ рдХреНрд╖рдг рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ [...] _ (рд╕реНрд░реЛрдд: рдПрдордбреАрдПрди )ред рддреЛ, рдореВрд▓ рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ Date рдЙрджрд╛рд╣рд░рдг рдХреЗрд╡рд▓ рдЗрд╕ рдПрдХ рдорд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдЕрдиреНрдп рд╕рднреА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдЙрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд▓реЛрдХреЗрд▓/рд╕рд┐рд╕реНрдЯрдо рд╕реНрдерд┐рддрд┐ (рдЬреИрд╕реЗ рдЯрд╛рдЗрдордЬрд╝реЛрди рдСрдлрд╝рд╕реЗрдЯ) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреНрд░реЗрд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред

#

рдПрдХ рджрд┐рдирд╛рдВрдХ рд╡рд╕реНрддреБ рдореЗрдВ getTimezoneOffset рдФрд░ toISOString рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВред

рдпреЗ Date рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк (рд╕реНрд░реЛрдд: рдПрдордбреАрдПрди ) рдкрд░ рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВ, рди рдХрд┐ Date рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ (рдЙрд░реНрдл рдЗрдВрд╕реНрдЯреЗрдВрд╕) рдХреАред

рдЕрдзрд┐рдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, getTimezoneOffset() рдХрд╛ рдорд╛рди рд╡рд░реНрддрдорд╛рди рд▓реЛрдХреЗрд▓ (рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдо рд╕реЗрдЯрд┐рдВрдЧреНрд╕) рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдХреЛрдИ рд╕рдордХрдХреНрд╖ setTimezoneOffset() рд╡рд┐рдзрд┐ рдирд╣реАрдВ рд╣реИ рдФрд░ рдПрдХ рд╣реА рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд╕рднреА Date рдСрдмреНрдЬреЗрдХреНрдЯ getTimezoneOffset() рд▓рд┐рдП рд╕рдорд╛рди рдорд╛рди рдХреНрдпреЛрдВ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

const d1 = new Date('December 15, 2018 12:34:56');  // No timezone; uses the current system locale.
const d2 = new Date('December 15, 2018 12:34:56 GMT+10'); // Uses GTM+10 as timezone.

d1.getTimezoneOffset() === d2.getTimezoneOffset();  // true

рдЗрд╕рд▓рд┐рдП, рджрд┐рдирд╛рдВрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рд╕реНрддреБрддрд┐ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдордпрдХреНрд╖реЗрддреНрд░ рдЬрд╛рдирдХрд╛рд░реА Date рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдЙрд╕ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдФрд░ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдордп рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреНрд╖рдг рдореЗрдВ рдореИрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдореА Date рдСрдмреНрдЬреЗрдХреНрдЯ рдЯрд╛рдЗрдордЬрд╝реЛрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИ: рд╕реНрдорд╛рдЗрд▓реА:

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдерд╛, toISOString() рд╡рд┐рдзрд┐ Z рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЬреЛ UTC рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред

#

рджреВрд╕рд░реЗ, JSON.stringify() рднреА рдЬрд╝реЛрди рдорд╛рди рдХреЛ рдирд╣реАрдВ рдЫреАрдирддрд╛ рд╣реИ

рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ toISOString() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдпреВрдЯреАрд╕реА рдореЗрдВ рджрд┐рдирд╛рдВрдХ рдорд╛рди рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рддрд╛ рд╣реИ (рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрдд рдореЗрдВ Z рдЬреЛрдбрд╝рдХрд░)ред рд▓реМрдЯрд╛рдИ рдЧрдИ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдХреЛрдИ рдЯрд╛рдЗрдордЬрд╝реЛрди рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред

#

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

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдХрд╛ рдЗрд╕рд╕реЗ рдХреНрдпрд╛ рд▓реЗрдирд╛-рджреЗрдирд╛ рд╣реИред рд╣рдо рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рдереЗред

рдлрд┐рд░, рдЗрд╕рдХрд╛ AngularJS рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрд┐рд▓реНрдЯ-рдЗрди рдСрдмреНрдЬреЗрдХреНрдЯ (рдЬреИрд╕реЗ Date рдФрд░ JSON ) рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВред

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

рдпрд╣ рдХреБрдЫ рдХреЛрдгреАрдп-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдорд╛рдирдХ JSON.stringify рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИред

рдореВрд▓ рд░реВрдк рд╕реЗ, рдбреЗрдЯрд╛ рдкреЛрд╕реНрдЯ рдХрд░рддреЗ рд╕рдордп, $http рдЗрд╕реЗ JSON рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реИ ( JSON.stringify() )ред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рджрд┐рдирд╛рдВрдХ рд╡рд╕реНрддреБ рдХрд╛ JSON рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдЗрд╕рдХрд╛ ISO-8601 рд░реВрдк рд╣реИ (рдЬреЛ рдХрд┐ рдЖрдк рдиреЗрдЯрд╡рд░реНрдХ рдЯреИрдм рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВ)ред

рдХрд┐рд╕реА рджрд┐рдирд╛рдВрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╡реИрд╕реЗ рднреА рдЯрд╛рдЗрдордЬрд╝реЛрди рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рдЬрд╛рдирдХрд╛рд░реА рдЫреАрди рд▓реА рдирд╣реАрдВ рдЬрд╛рддреА рд╣реИред рд╡рд░реНрддрдорд╛рди рд▓реЛрдХреЗрд▓ (рдЬреЛ рджрд┐рдирд╛рдВрдХ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддреБрдд рджрд┐рдирд╛рдВрдХ рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИ) рдореЗрдВ рдЯрд╛рдЗрдордЬрд╝реЛрди рдСрдлрд╝рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдмреНрд░рд╛рдЙрдЬрд░ рдЙрд╕ рдСрдлрд╝рд╕реЗрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рджрд┐рдирд╛рдВрдХ рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрдм console.log рдЗрд╕реЗ рдЧрд┐рдВрдЧ рдХрд░рддрд╛ рд╣реИред

рдЗрд╕реЗ рдмрдВрдж рдХрд░рдирд╛ рдПрдВрдЧреБрд▓рд░ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред

@gkalpak рдкрд╣рд▓реЗ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рдирд╛ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ рдХрд┐ рджрд┐рдирд╛рдВрдХ рд╡рд╕реНрддреБ рдореЗрдВ рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред рдЬрдм рд╣рдо рдирдИ рддрд┐рдерд┐ () рджреНрд╡рд╛рд░рд╛ рдПрдХ рддрд┐рдерд┐ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдиреАрдп рдХреНрд╖реЗрддреНрд░ рд╣реЛрддреА рд╣реИред рдПрдХ рджрд┐рдирд╛рдВрдХ рд╡рд╕реНрддреБ рдореЗрдВ getTimezoneOffset рдФрд░ toISOString рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВред рдЬрдм рдЗрди рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдЬрд╝реЛрди рдорд╛рди рд▓реМрдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдРрд╕рд╛ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ рдЬреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рдкреНрд░рд┐рдВрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ, рд╡реЗ рджрд┐рдирд╛рдВрдХ рд╡рд╕реНрддреБ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдорд╛рди рд╣реИрдВред

new Date().getTimezoneOffset()
-330

new Date().toISOString()
"2018-12-04T05:40:37.399Z"

рджреВрд╕рд░реЗ, JSON.stringify() рднреА рдЬрд╝реЛрди рд╡реИрд▓реНрдпреВ рдХреЛ рд╕реНрдЯреНрд░рд┐рдк рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣рдордиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рджреЗрдЦрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╡рд╣реА рд╣реИ, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдЕрдЪреНрдЫрд╛ рдкреНрд░рд┐рдВрдЯ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред

JSON.stringify({d:new Date()})
"{"d":"2018-12-04T05:42:08.973Z"}"

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

рдкрд╣рд▓реЗ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рдирд╛ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ рдХрд┐ рджрд┐рдирд╛рдВрдХ рд╡рд╕реНрддреБ рдореЗрдВ рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рдЕрдм рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рдирд╛ рд╕рд╣реА рд╣реИ: рдореБрд╕реНрдХрд░рд╛рд╣рдЯ: рдПрдХ Date рд╡рд╕реНрддреБ _"рд╕рдордп рдореЗрдВ рдПрдХ рдХреНрд╖рдг рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ [...] _ (рд╕реНрд░реЛрдд: рдПрдордбреАрдПрди )ред рддреЛ, рдореВрд▓ рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ Date рдЙрджрд╛рд╣рд░рдг рдХреЗрд╡рд▓ рдЗрд╕ рдПрдХ рдорд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдЕрдиреНрдп рд╕рднреА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдЙрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд▓реЛрдХреЗрд▓/рд╕рд┐рд╕реНрдЯрдо рд╕реНрдерд┐рддрд┐ (рдЬреИрд╕реЗ рдЯрд╛рдЗрдордЬрд╝реЛрди рдСрдлрд╝рд╕реЗрдЯ) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреНрд░реЗрд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред

#

рдПрдХ рджрд┐рдирд╛рдВрдХ рд╡рд╕реНрддреБ рдореЗрдВ getTimezoneOffset рдФрд░ toISOString рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВред

рдпреЗ Date рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк (рд╕реНрд░реЛрдд: рдПрдордбреАрдПрди ) рдкрд░ рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВ, рди рдХрд┐ Date рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ (рдЙрд░реНрдл рдЗрдВрд╕реНрдЯреЗрдВрд╕) рдХреАред

рдЕрдзрд┐рдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, getTimezoneOffset() рдХрд╛ рдорд╛рди рд╡рд░реНрддрдорд╛рди рд▓реЛрдХреЗрд▓ (рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдо рд╕реЗрдЯрд┐рдВрдЧреНрд╕) рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдХреЛрдИ рд╕рдордХрдХреНрд╖ setTimezoneOffset() рд╡рд┐рдзрд┐ рдирд╣реАрдВ рд╣реИ рдФрд░ рдПрдХ рд╣реА рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд╕рднреА Date рдСрдмреНрдЬреЗрдХреНрдЯ getTimezoneOffset() рд▓рд┐рдП рд╕рдорд╛рди рдорд╛рди рдХреНрдпреЛрдВ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

const d1 = new Date('December 15, 2018 12:34:56');  // No timezone; uses the current system locale.
const d2 = new Date('December 15, 2018 12:34:56 GMT+10'); // Uses GTM+10 as timezone.

d1.getTimezoneOffset() === d2.getTimezoneOffset();  // true

рдЗрд╕рд▓рд┐рдП, рджрд┐рдирд╛рдВрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рд╕реНрддреБрддрд┐ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдордпрдХреНрд╖реЗрддреНрд░ рдЬрд╛рдирдХрд╛рд░реА Date рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдЙрд╕ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдФрд░ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдордп рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреНрд╖рдг рдореЗрдВ рдореИрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдореА Date рдСрдмреНрдЬреЗрдХреНрдЯ рдЯрд╛рдЗрдордЬрд╝реЛрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИ: рд╕реНрдорд╛рдЗрд▓реА:

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдерд╛, toISOString() рд╡рд┐рдзрд┐ Z рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЬреЛ UTC рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред

#

рджреВрд╕рд░реЗ, JSON.stringify() рднреА рдЬрд╝реЛрди рдорд╛рди рдХреЛ рдирд╣реАрдВ рдЫреАрдирддрд╛ рд╣реИ

рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ toISOString() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдпреВрдЯреАрд╕реА рдореЗрдВ рджрд┐рдирд╛рдВрдХ рдорд╛рди рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рддрд╛ рд╣реИ (рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрдд рдореЗрдВ Z рдЬреЛрдбрд╝рдХрд░)ред рд▓реМрдЯрд╛рдИ рдЧрдИ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдХреЛрдИ рдЯрд╛рдЗрдордЬрд╝реЛрди рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред

#

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

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдХрд╛ рдЗрд╕рд╕реЗ рдХреНрдпрд╛ рд▓реЗрдирд╛-рджреЗрдирд╛ рд╣реИред рд╣рдо рд╕рдордп рдХреНрд╖реЗрддреНрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рдереЗред

рдлрд┐рд░, рдЗрд╕рдХрд╛ AngularJS рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрд┐рд▓реНрдЯ-рдЗрди рдСрдмреНрдЬреЗрдХреНрдЯ (рдЬреИрд╕реЗ Date рдФрд░ JSON ) рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВред

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

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

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

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

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

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

michael-letcher picture michael-letcher  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ