Twitter hashtag: #esspec
便利ツール
時事ネタ
自己紹介 (近況報告)
syumai syumai.icon
TSを書いて暮らしてます
TSKaigi Proposal出しました
iwatsurut
とくに、イベントもなく過ごしています。
今日 Hacker News に載ってました。夏時間だけにするらしい。
igrep(山本悠滋)
React Tokyo Fes 2026のスポンサーブースめっちゃ忙しかった
maru。(まる)
主にTSで仕事してます。React, Node。
mcp周りの実装してた
memo
前回のあらすじ
今回のメモ
ふぁぼんさんがすごい
code:js
new Date(2026, 0, 1, 0, 0, 0, 0)
2025-12-31T15:00:00.000Z
Date.UTC(2026, 0, 1, 0, 0, 0, 0)
1767225600000
new Date(Date.UTC(2026, 0, 1, 0, 0, 0, 0))
2026-01-01T00:00:00.000Z
Date.UTC(273790, 0, 1, 0, 0, 0, 0)
8577810748800000
Date.UTC(285400, 0, 1, 0, 0, 0, 0)
NaN
Date.UTC(280000, 0, 1, 0, 0, 0, 0)
NaN
これ?
code:js
// 最大が 8.64 × 10**15
Date.UTC(275760, 8, 13, 0, 0, 0, 0)
8640000000000000
Date.UTC(275760, 8, 13, 0, 0, 0, 1)
NaN
code:js
(new Date()).getDate()
3
const date = new Date()
undefined
getDate.call(date)
3
getDate.call("string")
Uncaught TypeError: this is not a Date object.
at String.getDate (<anonymous>)
const nanDate = new Date(NaN)
undefined
nanDate
Invalid Date
nanDate.getDate()
NaN
code:js
date.getTime()
1772536306887
nanDate.getTime()
NaN
nanDate.getTimezoneOffset()
NaN
date.getTimezoneOffset()
-540
date.getTimezoneOffset()/60
-9
code:js
d3.setDate(28)
1803776461001
d3
2027-02-28T01:01:01.001Z
d3.setDate(29)
1803862861001
d3
2027-03-01T01:01:01.001Z
d3.setDate(-1)
1803690061001
d3
2027-02-27T01:01:01.001Z
d3.setDate(0)
1801357261001
d3
2027-01-31T01:01:01.001Z
code:js
date.setTime(Number.MAX_SAFE_INTEGER)
NaN
date
Invalid Date
date.getTime()
NaN
code:js
const d2 = new Date(2026, 0, 1, 9, 0, 0, 0);
undefined
d2
2026-01-01T00:00:00.000Z
d2.toLocaleString()
'1/1/2026, 9:00:00 AM'
d2.setDate(2)
1767312000000
d2
2026-01-02T00:00:00.000Z
d2.toLocaleString()
'1/2/2026, 9:00:00 AM'
d2.setUTCDate(3)
1767398400000
d2
2026-01-03T00:00:00.000Z
d2.toLocaleString()
'1/3/2026, 9:00:00 AM'
const d3 = new Date(2026, 0, 2, 0, 0, 0, 0);
undefined
d3
2026-01-01T15:00:00.000Z
d3.toLocaleString()
'1/2/2026, 12:00:00 AM'
d3.setDate(3)
1767366000000
d3
2026-01-02T15:00:00.000Z
d3.toLocaleString()
'1/3/2026, 12:00:00 AM'
d3.setUTCDate(4)
1767538800000
d3
2026-01-04T15:00:00.000Z
d3.toLocaleString()
'1/5/2026, 12:00:00 AM'
ブラウザでの挙動
code:js
const d3 = new Date(2026, 0, 2, 0, 0, 0, 0);
undefined
d3.toLocaleString()
'2026/1/2 0:00:00'
const d3 = new Date(2026, 0, 2, 9, 0, 0, 0);
undefined
d3.toLocaleString()
'2026/1/2 9:00:00'
const d3 = new Date(2026, 0, 2, 22, 0, 0, 0);
undefined
d3.toLocaleString()
'2026/1/2 22:00:00'
code:js
❯ node -v
v24.14.0
const d3 = new Date(2026, 0, 2, 0, 0, 0, 0);
undefined
d3.toLocaleString()
'2026/1/2 0:00:00'
code:js
d3
2026-01-04T15:00:00.000Z
d3.toDateString()
'Mon Jan 05 2026'
d3.setTime(NaN)
NaN
d3
Invalid Date
d3.toDateString()
'Invalid Date'
code:js
const d4 = new Date(275760, 0, 1, 0, 0, 0, 0)
undefined
d4
+275759-12-31T15:00:00.000Z
d4.toISOString()
'+275759-12-31T15:00:00.000Z'
code:js
const obj = {
| toISOString() { return "dummy"; }}
undefined
Date.prototype.toJSON.call(new Date())
'2026-03-03T12:30:53.035Z'
Date.prototype.toJSON.call(obj)
'dummy'
| toISOString() { return "dummy2"; }}
undefined
Date.prototype.toJSON.call(obj2)
null