Slide 1

Slide 1 text

3ZVTFJ4BKJLJ!TBKJLJY ઌऔΓʂ5FNQPSBM🕑

Slide 2

Slide 2 text

4BKJ3ZVTFJ4BKJLJ 'SPOUFOE%FWFMPQFSBU$ZCP[V JOD 👀JO*OUM5FNQPSBM&4-JOUFUD 𝕏 !TBKJLJY

Slide 3

Slide 3 text

࿩͢͜ͱ 5FNQPSBMʹ͍ͭͯ؆୯ͳ͓͞Β͍ ࠓ೥͸5FNQPSBM͕Ξπ͍ 5FNQPSBMͷ཈͑Δ΂͖ίϯηϓτ ࠓޙͲ͏͢΂͖ͳΜͰ͠ΐ͏Ͷʁ

Slide 4

Slide 4 text

5FNQPSBMͷ֓ཁʹ͍͓ͭͯ͞Β͍ %BUFΦϒδΣΫτʹସΘΔ৽͍͠೔࣌ૢ࡞ΦϒδΣΫτͷ࢓༷ طଘͷ%BUFΦϒδΣΫτͷෆຬΛղফ͠ɺ৽͍͠ػೳ΋αϙʔτ͢Δ ݱࡏ4UBHFͷ&$."4DSJQU1SPQPTBM

Slide 5

Slide 5 text

🕐5FNQPSBM͕Ξπ͍🔥

Slide 6

Slide 6 text

5FNQPSBMͷۙگ ೥݄%FOP͕ϑϥά෇͖Ͱࢼݧతʹαϙʔτ։࢝ w %FOP5FNQPSBM"1* ೥݄"1*Λ࡟ݮ͢Δ͜ͱΛܾఆ w ࠓ·ͰʮαΠζʯ͕͔ͳΓ໰୊ࢹ͞Ε͍ͯͨ ೥݄'JSFGPY /*HIUMZ Ͱ5FNQPSBM͕ೖΔ͜ͱʹ ೥݄.%/ʹ΋υΩϡϝϯτ͕௥Ճ͞ΕΔ

Slide 7

Slide 7 text

೥͸ 🎍5FNQPSBMݩ೥🎍 ͔΋Ͷ

Slide 8

Slide 8 text

ࠓͦ͜5FNQPSBMΛ ཈͓͑ͯ͘΂͖λΠϛϯάʂ

Slide 9

Slide 9 text

%BUFͷԿ͕ෆศͩͬͨͷ͔ʁ 5FNQPSBMͰղܾ͔ͨͬͨ͠໰୊ͨͪ ͷҰ෦ w λΠϜκʔϯͱΧϨϯμʔͷαϙʔτ͕ͳ͍ w ೔࣌จࣈྻͷύʔεΘ͔ΓͮΒ͍ w %BUFͷTFUܥഁյૢ࡞ͳͷෆศ w ܭࢉܥͷϝιου͕ͳ͍

Slide 10

Slide 10 text

λΠϜκʔϯͱΧϨϯμʔͷαϙʔτ͕ͳ͍😭 %BUF͸γεςϜͷλΠϜκʔϯ65$͔͠αϙʔτ͍ͯ͠ͳ͍ w ଞͷλΠϜκʔϯͷܭࢉ͸֤ࣗؤுΕ w αϚʔλΠϜͷߟྀͱ͔ࣗ෼Ͱ΍Δͷʜ ΧϨϯμʔ͸άϨΰϦ΢εྐྵ͚ͩ w ੈքʹ͸ඇάϨΰϦ΢εྐྵ͕ݱ໾ͳ৔໘΋͋Δ தࠃͷچྐྵɺϔϒϥΠྐྵ౳ w ଠӄྐྵͩͱ೥߸͕มΘΔͱ͔ͷϨϕϧ͡Όͳ͍

Slide 11

Slide 11 text

೔࣌จࣈྻͷύʔεΘ͔ΓͮΒ͍໰୊😭 ༗໊೔෇·Ͱͩͱ65$͚ͩͲ࣌ࠁؚΊΔͱγεςϜͷλΠϜκʔϯʹͳΔ • 2025-02-27 → "Thu Feb 27 2025 09:00:00 GMT+0900" • 2025-02-27T00:00:00 → "Thu Feb 27 2025 00:00:00 GMT+0900" ࢓্༷໌ه͞Εͯͳ͍͚ͲύʔεͰ͖ͪΌ͏΍ͭ΋͋Δ • RFC 2822ܗࣜ : "Thu Feb 27 2025" • εϥογϡ(/) ۠੾Γ : "2025/02/27"

Slide 12

Slide 12 text

%BUFͷTFUܥഁյૢ࡞ͳͷෆศ͡Όͳ͍ʁ🤔 4FUܥ TFU%BUFͳͲ ͷϝιου͸ͦͷΦϒδΣΫτΛഁյతʹมߋ͢Δ w ฦΓ஋͕৽͍͠λΠϜελϯϓͳͷͰඇഁյʹݟ͑ͳ͘΋ͳ͍ w ϛεͷݪҼʹͳΔͷͰඇഁյܥͷϝιουͩͱخ͍͠ΑͶ w ࠷ۙ"SSBZͷϝιουʹ΋ඇഁյܥ૿͑ͨΑͶʂ

Slide 13

Slide 13 text

ܭࢉܥͷϝιουཉ͍͠ͳ͊ʜ✋ ೔࣌ͷͨΊͷศརܭࢉϝιου͕ͳ͍ w Ճࢉݮࢉ w ࠩ෼ %VSBUJPO ͷܭࢉ w ൺֱ ͳͯ͘΋ܭࢉͰ͖ͳ͘͸ͳ͍͕ʜ w ઌड़ͷഁյతϝιουͰܭࢉ͢Δͷ͸໘౗

Slide 14

Slide 14 text

Ͳ͏͠Α͏ʁ

Slide 15

Slide 15 text

ͦΜͳ͋ͳͨʹ5FNQPSBM

Slide 16

Slide 16 text

👍λΠϜκʔϯͱΧϨϯμʔͷαϙʔτ *"/"ͷ5JNF;POF%BUBCBTFʹ͋ΔλΠϜκʔϯΛαϙʔτ w ΋ͪΖΜαϚʔλΠϜߟྀ΍λΠϜκʔϯఆٛͷมߋͳͲ΋αϙʔτ ΧϨϯμʔ΋$-%3ʹ͋ΔͷΧϨϯμʔΛαϙʔτ w *OUMͷ%BUF5JNF'PSNBU͕αϙʔτ͢ΔΧϨϯμʔͱಉ͡ • = Intl.supportedValuesOf("calendar") ͷϦετ

Slide 17

Slide 17 text

👍೔࣌จࣈྻͷ࢓༷Λ௥Ճ͠ύʔε͸ݫີʹ 5FNQPSBM͸ݫີʹ3'$ͱͦΕΛ֦ுͨ͠3'$ͷΈαϙʔτ RFC 3339 : ISO8601ͱ΄΅Ұॹ / toISOString() ͷ݁Ռ • "2025-02-27T00:00:00.000Z" 3'$*OUFSOFU&YUFOEFE%BUF5JNF'PSNBU *9%5' w 3'$ͷλΠϜκʔϯ΍ΧϨϯμʔ৘ใΛ௥ՃͰ͖ΔΑ͏֦ு • "2025-02-27T00:00:00.000Z[Asia/Tokyo][u-ca-japanese]"

Slide 18

Slide 18 text

👍ඇഁյͳૢ࡞ɾܭࢉ"1*ͷॆ࣮ 5FNQPSBMͷ೔࣌ૢ࡞ܥͷ"1*͸جຊඇഁյϝιου ܭࢉϝιου΋ ܭࢉܥͷϝιου΋͋Δ w Ճࢉݮࢉظؒͷܭࢉൺֱ • zonedDateTime.add(duration) • ظؒΛද͢ Temporal.Duration ΫϥεΛར༻Ͱ͖Δ • Temporal.Duration.from({ days: 1, hours: 12 });

Slide 19

Slide 19 text

👍*OUMͱͷ࿈ܞ ֤$MBTTͷUP-PDBM4USJOH ͸ w *OUM%BUF5JNF'PSNBU w *OUM%VSBUJPO'PSNBU 🆕࠷ۙ4UBHFʹͳͬͨΑʂ ͱΦϓγϣϯ΍ϩέʔϧͷѻ͍͕Ұॹ΄΅ϥούʔ

Slide 20

Slide 20 text

ͦ΋ͦ΋ͷ ʮ೔࣌΍΍͍͜͠໰୊ʯ ΁ͷΞϯαʔ

Slide 21

Slide 21 text

ͳΜͰ೔࣌͸͜Μͳʹ΍΍͍͜͠ͷ͔ ۃ࿦Λݴͬͯ͠·͏ͱ w λΠϜκʔϯ ࣌ࠩ ͕͋Δ w ΧϨϯμʔ ྐྵ ͕͋Δ ͔Β΍΍͍͜͠ɻ ΈΜͳ͕6OJY5JNF 1PTJY5JNF Ͱա͍ͤͯ͝Ε͹͜͜·Ͱ΍΍͘͜͠͸ͳ͍ w ͚Ͳਓؒ͸ͦ͏͸Ͱ͖͍ͯͳ͍

Slide 22

Slide 22 text

ΩϞ͸λΠϜκʔϯͱΧϨϯμʔͷѻ͍ ͭ·ΓʮλΠϜκʔϯͱΧϨϯμʔΛͲ͏͍͏"1*Ͱѻ͏͔ʯ͕伴 w ʮ6OJY5JNF65$ͱϩʔΧϧͳ೔࣌ʯΛͲ͏"1*Ͱ۠ผ͢Δ͔ 6OJY5JNF65$ w ઈରతͳ೔࣌ɻج४ͷॠ͔ؒΒͷܦաඵ਺ͳͲͰද͞ΕΔ ϩʔΧϧͳ೔࣌ w Ϣʔβʔͷೝࣝͯ͠ΔλΠϜκʔϯͱྐྵͷதͰͷ೔࣌

Slide 23

Slide 23 text

5FNQPSBMͷΞϓϩʔν ֤ΦϒδΣΫτͰ໌֬ʹʮઈର࣌ؒPSϩʔΧϧ೔࣌ʯΛ۠ผ • ઈର࣌ؒ : Temporal.Instant • ϩʔΧϧͳ೔࣌ : Temporal.Plainʓʓ • ϩʔΧϧͳ೔࣌ʹ͸͸ΧϨϯμʔΛࢦఆͰ͖Δ ม׵ʹ͸λΠϜκʔϯ৘ใ͕ඞཁˠڮ౉͠ͷͨΊͷΫϥε • Temporal.ZonedDateTime Ͱ૬ޓͷม׵Λߦ͏

Slide 24

Slide 24 text

ߟ࡯ શ෦;POFE%BUF5JNF͡Όμϝͳͷ͔ʁ ೖྗ͢Δ࣌ͱλΠϜκʔϯΛ֬ఆͰ͖Δ࣌͸Ұॹͳͷ͔ʁ ͦ΋ͦ΋͙͢ʹλΠϜκʔϯ֬ఆͰ͖ͳ͍Մೳੑ w ʮϢʔβͷ࢖͍͍ͨλΠϜκʔϯ㱠γεςϜλΠϜκʔϯʯͷ࣌ ઃܭ্ͷ࿩ w λΠϜκʔϯΛ֬ఆ͍ͨ࣌͠㲈αʔόʔʹૹΔ࣌ w ૬ରతͳܭࢉ͢Δ͚ͩͳΒλΠϜκʔϯ৘ใ͸͍Βͳ͍

Slide 25

Slide 25 text

5FNQPSBMΛকདྷ࢖͍΍͘͢Δ͢ΔͨΊʹ ;POFE%BUF5JNF *OTUBOU ;POFE%BUF5JNF 1MBJO%BUF5JNF *OTUBOU 4FSWFS FormatedString Input Component 4FSWFS ར༻͢Δ5JN[F;POF toLocaleString() ઈର೔࣌ͱϩʔΧϧ೔࣌ͷڥքΛҙࣝ͢Δ ܭࢉ BEEVOUJMʜ

Slide 26

Slide 26 text

ʲએ఻ʳϒϩάͱొஃ HJIZPKQͰॴଐνʔϜͱͯ͠ʮ৐Γ͜ͳͤϞμϯϑϩϯτΤϯυʯΛ࿈ࡌத w ࡢ೔ࣗ෼ͷॻ͍ͨهࣄ໨͕ެ։͞Ε·ͨ͠ʂ w ΋ͪΖΜ͓୊͸5FNQPSBMͰ͢ʂಡΜͰͶʂ ໌೔ͷʮ+4$POGKQ͓͔ΘΓ/PEFֶԂ࣌ݶ໨ʯʹొஃ͠·͢ʂ w λΠτϧ͸ʮϑϩϯτΤϯυͰ೔࣌ॲཧͱઓ͏ͨΊʹWFSʯ w ࠓճΑΓแׅతʹ೔࣌ͷΊΜͲ͍͘͞࿩Λ͢Δ༧ఆ

Slide 27

Slide 27 text

3ZVTFJ4BKJLJ!TBKJLJY ͋Γ͕ͱ͏͍͟͝·ͨ͠