Typescript: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ Π΄Π°Ρ‚Ρ‹ ΠΈΠ· строки date добавляСт 21 сСкунду ΠΊ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 5 июл. 2019  Β·  4ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: microsoft/TypeScript


ВСрсия TypeScript: 3.5.2


Условия поиска: 3.5.2 Π΄Π°Ρ‚Π° 21 сСкунда новая Π΄Π°Ρ‚Π° () новая строка Π΄Π°Ρ‚Ρ‹ Π³Ρ€ΠΈΠ½Π²ΠΈΡ‡ Ѐранция

Код

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… Π΄Π°Ρ‚ (Π΄ΠΎ ΠΈΠ»ΠΈ Ρ€Π°Π²Π½Ρ‹Ρ… 10 ΠΌΠ°Ρ€Ρ‚Π° 1911 Π³.) ΠΈΠ· Π΄Π°Ρ‚ Π² строковом Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ добавляСт 21 сСкунду ΠΊ ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠΉ Π΄Π°Ρ‚Π΅.


var firstDate = new Date("1900-01-01T00:00:00.000Z").toString()
// Mon Jan 01 1900 00:09:21 GMT+0009 (Central European Standard Time)

var secondDate = new Date(firstDate).toString()
// Mon Jan 01 1900 00:09:42 GMT+0009 (Central European Standard Time)

var thirdDate = new Date(secondDate).toString()
// Mon Jan 01 1900 00:10:03 GMT+0009 (Central European Standard Time)

ОТидаСмоС повСдСниС:
Π”ΠΎΠ»ΠΆΠ΅Π½ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ Π² понСдСльник, 01 января 19:00, 00:09:21 GMT + 0009 (Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ΅Π²Ρ€ΠΎΠΏΠ΅ΠΉΡΠΊΠΎΠ΅ стандартноС врСмя)

ЀактичСскоС ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅:
ДобавляСт 21 сСкунду ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅ Π½ΠΎΠ²ΠΎΠΉ Π΄Π°Ρ‚Ρ‹ (строки).

Бсылка Π½Π° ΠΈΠ³Ρ€ΠΎΠ²ΡƒΡŽ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΡƒ:

БвязанныС вопросы:

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

\

@ j-Oliveras всС зависит ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² вашСго компилятора:

temporalAnomaly

<\ / сарказм>

ВсС 4 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Как это ошибка машинописного тСкста, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ находится Π²ΠΎ врСмя выполнСния?

Π—Π°Ρ‚Π΅ΠΌ toString пСрСводится Π² Π½ΠΈΠΆΠ½ΠΈΠΉ рСгистр. Π‘ Node (10.15.3), Firefox (67.0.4) консоли devtools ΠΈ Chrome (75) devtools console это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΊΠ°ΠΊ оТидалось (ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈΠ· Π²Ρ‹Π²ΠΎΠ΄Π° ΡƒΠ·Π»Π°):

var firstDate = new Date("1900-01-01T00:00:00.000Z").toString()
// Mon Jan 01 1900 01:00:00 GMT+0100 (GMT+01:00)

var secondDate = new Date(firstDate).toString()
// Mon Jan 01 1900 01:00:00 GMT+0100 (GMT+01:00)

var thirdDate = new Date(secondDate).toString()
// Mon Jan 01 1900 01:00:00 GMT+0100 (GMT+01:00)

\

@ j-Oliveras всС зависит ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² вашСго компилятора:

temporalAnomaly

<\ / сарказм>

На самом Π΄Π΅Π»Π΅, @ ruslan-volkov, этот вопрос Π½Π΅ касаСтся компилятора TypeScript. Пока компилятор создаСт ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ΄ JavaScript, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚, Π² TypeScript Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ.

Π’ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅, Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ошибкой Π² ​​конкрСтном Π΄Π²ΠΈΠΆΠΊΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния JavaScript (ΠΈΠ»ΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄Π²ΠΈΠΆΠΊΠ°Ρ…), вСроятно, ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΌ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ Π²Ρ‹Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡŽ Π΄Π°Ρ‚ Π΄ΠΎ 1911 Π³ΠΎΠ΄Π° Π²ΠΎ Π€Ρ€Π°Π½Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° страна ΠΎΠΏΠ΅Ρ€Π΅ΠΆΠ°Π»Π° врСмя ΠΏΠΎ Π“Ρ€ΠΈΠ½Π²ΠΈΡ‡Ρƒ Π½Π° 9 ΠΌΠΈΠ½ΡƒΡ‚ 21 сСкунду . Но это Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ с TypeScript.

Π― Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π² ΠΌΠΈΡ€Π΅ выполнСния JS Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎΠ± этом, учитывая всС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с созданиСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Date Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π²Ρ‹ это Π΄Π΅Π»Π°Π΅Ρ‚Π΅:

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: синтаксичСский Π°Π½Π°Π»ΠΈΠ· строк Π΄Π°Ρ‚Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ конструктора Date ... Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ рСкомСндуСтся ΠΈΠ·-Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ ΠΈ нСсоотвСтствий Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ².

Π£Π΄Π°Ρ‡ΠΈ!

Бпасибо Π·Π° ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ ΠΈ ΠΏΠΎΡ‚Ρ€Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ врСмя, ΠΌΠ½Π΅ ΠΏΠ»ΠΎΡ…ΠΎ!

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ