• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Skrócenie formy wyświetlania Daty

0 głosów
59 wizyt
pytanie zadane 12 stycznia 2020 w JavaScript przez saseta00 Użytkownik (700 p.)
edycja 12 stycznia 2020 przez saseta00

Hejka pobieram date przez API dla opublikowanych newsów, w takim formacie: 1578861376    
Na początku chciałem ją sprowadzić do zwykłej
Użyłem poniższego kodu aby obrobić to w coś zrozumialego:
 

xdata = 1578861376;
var date = new Date(xdata*1000); 

Zwraca mi datę w takiej formie: 

Sun Jan 12 2020 21:36:16 GMT+0100 (czas środkowoeuropejski standardowy)

Mam pytanie, jest jakaś prosta metoda w której mogę sposób wyświetlania daty skrócić do jakiegoś standardowego formatu bez angielskich wstawek i informacji o strefie czasowej?
 

Innym rozwiązaniem które mnie zadowoli, byłoby również wyświetlanie ile czasu minęło od tego pobranego z API, rzadko jest to ponad dzień, póki co udało mi się sprowadzić to do minut które mineły.  
Tylko nie wiem jak ładnie obrobić to w taki sposób żeby nie wyświetlało np. 120 minut tylko 2h.
Wysyłam takich informacji ponad 10 poprzez document.getelementbyid  do htmla więc nie chciałbym sobie zawalić kodu niepotrzebnie a to to akurat potrafię :) 
Proszę o wskazówki, pozdrawiam.

let obecna = Date.now();
let dat0 = logi.Data[0].published_on*1000;    //ta pobrana z API 

//odejmuję date w ms, od obecnej, wynik dzielę do uzyskania sekund później minut i math-roundem do liczby całkowitej
let minuty = (Math.round(((obecna-dat0)/1000)/60));     
console.log(minuty);

 

2 odpowiedzi

+1 głos
odpowiedź 12 stycznia 2020 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)
wybrane 12 stycznia 2020 przez saseta00
 
Najlepsza

Tu masz ładnie opisane wszystkie funkcje Date.

Myślę, że ciebie najbardziej zadowolą jednak te funkcje.

const date = new Date();

date.toLocaleString();
date.toLocaleTimeString();
date.toLocaleDateString();

 

0 głosów
odpowiedź 12 stycznia 2020 przez saseta00 Użytkownik (700 p.)
edycja 12 stycznia 2020 przez saseta00

Dziękuje za pomoc, poradziłem właśnie sobię z tym problemem. 
Znalazłem jakiś kod i trochę go edytowałem pod siebie ale może się komuś przydać.
Zadowoliło mnie po prostu wyświetlanie czasu który upłynął od pobrania wartości, nawet estetyczniej to wygląda na stronie, jeśli chodzi o pobierane newsy przez API które dość często się aktualizują.

Oryginał: 
 

function time_convert(num)
 { 
  const hours = Math.floor(num / 60);  
  const minutes = num % 60;
  return `${hours}:${minutes}`;         
}

zmieniony:
 

function time_convert(num)
 { 
if (num < 60) { 
  const minutes = num % 60;
  return `${minutes} min. temu`;  
}
else if (num > 60, num<119) {
const hours = Math.floor(num / 60);  
const minutes = num % 60;
return  `${hours}:${minutes} godz. temu`;
}

else {
  const hours = Math.floor(num / 60);  
  return `${hours} godz. temu`; ;  
  }
}
console.log(time_convert(2));  //2 min. temu
console.log(time_convert(73)); //1:13 godz. temu
console.log(time_convert(140)); //2 godz. temu
console.log(time_convert(1200)); //20 godz. temu

 

Podobne pytania

0 głosów
0 odpowiedzi 121 wizyt
pytanie zadane 12 maja 2018 w PHP przez Neronys Bywalec (2,090 p.)
0 głosów
2 odpowiedzi 282 wizyt
pytanie zadane 25 stycznia 2017 w JavaScript przez Arkadiusz Fus Obywatel (1,130 p.)
–1 głos
3 odpowiedzi 143 wizyt
pytanie zadane 30 maja 2021 w PHP przez KFC Użytkownik (560 p.)

87,940 zapytań

136,517 odpowiedzi

304,381 komentarzy

58,305 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Sklep oferujący ćwiczenia JavaScript, PHP, rozmowy rekrutacyjne dla programistów i inne materiały

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...