2147483647 Unix Timestamp
2147483647 = 2038-01-19 03:14:07 UTC
JavaScript: new Date(2147483647 * 1000).toISOString()
Python: datetime.fromtimestamp(2147483647, tz=timezone.utc)
Linux: date -u -d @2147483647
macOS: date -u -r 21474836472147483647 é 2038-01-19 03:14:07 UTC
A marca de tempo Unix 2147483647 equivale a 2038-01-19T03:14:07.000Z (Tuesday, January 19, 2038, 03:14:07 UTC). O valor é o número de segundos decorridos desde o epoch Unix (1970-01-01 00:00:00 UTC).
Segundos vs milissegundos
2147483647 está em segundos Unix. JavaScript, Java e vários drivers de banco de dados esperam milissegundos Unix em vez disso — o mesmo instante, valor × 1000.
- Segundos Unix: 2147483647
- Milissegundos Unix: 2147483647000
- ISO 8601 UTC: 2038-01-19T03:14:07.000Z
- Dia do ano 2038: 19
Equivalentes em fusos locais
2147483647 é um único instante; a data e a hora de relógio diferem por fuso horário.
- UTC: 2038-01-19 03:14:07
- America/New_York: 2038-01-18 22:14:07
- America/Los_Angeles: 2038-01-18 19:14:07
- Europe/London: 2038-01-19 03:14:07
- Europe/Berlin: 2038-01-19 04:14:07
- Asia/Shanghai: 2038-01-19 11:14:07
- Asia/Tokyo: 2038-01-19 12:14:07
- Australia/Sydney: 2038-01-19 14:14:07
Converter em código
Linhas únicas para as linguagens mais perguntadas. Multiplique por 1000 para JavaScript Date.
- JavaScript: new Date(2147483647 * 1000).toISOString() → "2038-01-19T03:14:07.000Z"
- JavaScript (ms form): new Date(2147483647000).toISOString()
- Python: datetime.fromtimestamp(2147483647, tz=timezone.utc)
- Python ISO: datetime.fromtimestamp(2147483647, tz=timezone.utc).isoformat()
- Linux: date -u -d @2147483647
- macOS: date -u -r 2147483647
- Go: time.Unix(2147483647, 0).UTC()
- SQL (PostgreSQL): SELECT to_timestamp(2147483647) AT TIME ZONE 'UTC';
- SQL (MySQL): SELECT FROM_UNIXTIME(2147483647);
Erro comum: new Date(2147483647) in JavaScript
O construtor Date do JavaScript recebe milissegundos. Passar o valor em segundos como está faz Date interpretá-lo como 2,147,483,647 ms — apenas algumas semanas após o epoch. O resultado cai no início de 1970.
- Certo: new Date(2147483647 * 1000) → 2038-01-19T03:14:07.000Z
- Errado: new Date(2147483647) → 1970-01-25T20:31:23.647Z
- Regra rápida: um número de 10 dígitos é segundos; um de 13 dígitos é milissegundos.
FAQ
- Que data é a marca de tempo Unix 2147483647?
- 2147483647 em segundos Unix é 2038-01-19T03:14:07.000Z (Tuesday, January 19, 2038, 03:14:07 UTC).
- O que é 2147483647 em milissegundos?
- 2147483647000 milissegundos é o mesmo instante — a forma que JavaScript Date e Java Instant esperam.
- Por que new Date(2147483647) mostra 1970?
- JavaScript Date recebe milissegundos. O valor em segundos tratado como milissegundos aponta para o início de 1970. Use new Date(2147483647 * 1000) em vez disso.
- Como converto 2147483647 no shell?
- Linux: date -u -d @2147483647. macOS: date -u -r 2147483647. Ambos retornam a data UTC.