Pobieram odpowiedź API, w której mam do tej pory

20180224 (jest to numer)

Muszę go przekonwertować w formacie daty łańcuchowej

"2018-02-24"

Próbuję jak

a = 20180224;
a[5] = '-';

Ale to nie działa tutaj

-3
Ashutosh Jha 25 luty 2019, 14:43

2 odpowiedzi

Najlepsza odpowiedź

Możesz używać Wymień Metoda.

 (\d{4})(\d{2})(\d{2})
    |       |      |
   YYYY    MM     DD 
  ( G1 ) ( G2 ) ( G2 )
let str = `20180224`

let op = str.replace(/(\d{4})(\d{2})(\d{2})/g, `$1-$2-$3`)

console.log(op)
2
Code Maniac 25 luty 2019, 11:50

Możesz użyć {x0}} Funkcja i niektóre REGEXP:

var dateAsNumber = 20180224;
var dateAsString = dateAsNumber.toString().replace(/(\d{4})(\d{2})(\d{2})/, "$1-$2-$3");
console.log(dateAsString);
1
Salman A 25 luty 2019, 11:50