Lokasi ngalangkungan proxy:   [ UP ]  
[Ngawartoskeun bug]   [Panyetelan cookie]                
Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
2b92a6b
Translate a part of article
mahdiHash Aug 12, 2021
9a92e61
Translate a part of article
mahdiHash Aug 13, 2021
ad3968e
Add English term
mahdiHash Aug 13, 2021
87837a5
Translate a part of article
mahdiHash Aug 14, 2021
da70de4
Typo
mahdiHash Aug 14, 2021
545d065
Add a missing pronoun
mahdiHash Aug 14, 2021
c7d40b1
Translate a part of article
mahdiHash Aug 15, 2021
206704b
Translate a part of article
mahdiHash Aug 15, 2021
a6cc74d
Merge branch 'javascript-tutorial:master' into master
mahdiHash Aug 16, 2021
5808cf5
Translate a part of article
mahdiHash Aug 16, 2021
01a1089
Translate a part of article
mahdiHash Aug 17, 2021
87618e3
Translate article
mahdiHash Aug 18, 2021
69b5161
Translate task of "new date"
mahdiHash Aug 19, 2021
5fdcb79
Translate solution of "new date"
mahdiHash Aug 19, 2021
0a19720
Translate task of "get week day"
mahdiHash Aug 19, 2021
7ce160b
Translate solution of "get week day"
mahdiHash Aug 19, 2021
6b24d51
Translate task of "weekday"
mahdiHash Aug 19, 2021
8853862
Fix a translation mistake
mahdiHash Aug 19, 2021
db88420
Translate solution.js of "weekday"
mahdiHash Aug 19, 2021
251de89
Translate task of "get date ago"
mahdiHash Aug 20, 2021
9fdba6a
Translate solution of "get date ago"
mahdiHash Aug 20, 2021
5cb395a
Translate task of "last day of month"
mahdiHash Aug 20, 2021
6eaa1ca
Translate solution of "last day of month"
mahdiHash Aug 20, 2021
bfa29a0
Translate task of "get seconds today"
mahdiHash Aug 20, 2021
1d1095c
Translate solution of "get seconds today"
mahdiHash Aug 20, 2021
9ac0369
Translate task of "get seconds to tomorrow"
mahdiHash Aug 20, 2021
44fc7a1
Translate solution of "get seconds to tomorrow"
mahdiHash Aug 20, 2021
db6f956
Fix a translation mistake
mahdiHash Aug 20, 2021
306ddb7
Translate task of "format date relative"
mahdiHash Aug 20, 2021
725e637
Translate solution of "format date relative"
mahdiHash Aug 20, 2021
6482007
fix: fix a typo
mahdyar Aug 20, 2021
8d31cd3
Change "مهرزمانی" to "برچسب زمان"
mahdiHash Aug 20, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Translate solution of "format date relative"
  • Loading branch information
mahdiHash authored Aug 20, 2021
commit 725e637a62b8a22ea8c0206907abd0d60bcd0a07
22 changes: 11 additions & 11 deletions 1-js/05-data-types/11-date/8-format-date-relative/solution.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,36 @@
To get the time from `date` till now -- let's substract the dates.
برای گرفتن زمان از `date` تا الان، بیایید تفاضل تاریخ‌ها را بیابیم.

```js run demo
function formatDate(date) {
let diff = new Date() - date; // the difference in milliseconds
let diff = new Date() - date; // تفاضل به میلی‌ثانیه

if (diff < 1000) { // less than 1 second
return 'right now';
}

let sec = Math.floor(diff / 1000); // convert diff to seconds
let sec = Math.floor(diff / 1000); // به ثانیه diff تبدیل

if (sec < 60) {
return sec + ' sec. ago';
}

let min = Math.floor(diff / 60000); // convert diff to minutes
let min = Math.floor(diff / 60000); // به دقیقه diff تبدیل
if (min < 60) {
return min + ' min. ago';
}

// format the date
// add leading zeroes to single-digit day/month/hours/minutes
// تغییر دادن شکل تاریخ
// اضافه کردن صفر به دقیقه/ساعت/ماه/روز تک رقمی
let d = date;
d = [
'0' + d.getDate(),
'0' + (d.getMonth() + 1),
'' + d.getFullYear(),
'0' + d.getHours(),
'0' + d.getMinutes()
].map(component => component.slice(-2)); // take last 2 digits of every component
].map(component => component.slice(-2)); // دریافت 2 رقم آخر هر جزء

// join the components into date
// متصل کردن اجزاء برای ایجاد تاریخ
return d.slice(0, 3).join('.') + ' ' + d.slice(3).join(':');
}

Expand All @@ -40,11 +40,11 @@ alert( formatDate(new Date(new Date - 30 * 1000)) ); // "30 sec. ago"

alert( formatDate(new Date(new Date - 5 * 60 * 1000)) ); // "5 min. ago"

// yesterday's date like 31.12.2016 20:00
// تاریخ دیروز مانند 20:00 31.12.2016
alert( formatDate(new Date(new Date - 86400 * 1000)) );
```

Alternative solution:
راه حل جایگزین:

```js run
function formatDate(date) {
Expand All @@ -58,7 +58,7 @@ function formatDate(date) {
let diffMin = diffSec / 60;
let diffHour = diffMin / 60;

// formatting
// تغییر دادن شکل
year = year.toString().slice(-2);
month = month < 10 ? '0' + month : month;
dayOfMonth = dayOfMonth < 10 ? '0' + dayOfMonth : dayOfMonth;
Expand Down