ویرگول
ورودثبت نام
khaled moazedi
khaled moazediback end developer .. copy writter
khaled moazedi
khaled moazedi
خواندن ۲ دقیقه·۳ سال پیش

time in golang

سلام ! امیدوارم حالتون زیاد بد نباشه!
از وقتی جادی رو گرفتن انگار واقعا فهمیدم شوخی نیست! به یاد جادی ! بهترین و دوست داشتنی ترین تکنولوژیست ایران و برای آزادیش و سلامتیش #مهساـامینی:


خب قاعدتا ما با زمان کار داریم تو هر زبانی تو ی گو هم همینطور : چند تا نکته در مورد استفاده از زمان :


برای نمایش زمان الان من اینکارو میکنم : با دستور time.Now

package main import ( &quotfmt&quot &quottime&quot ) func main() { currentTime := time.Now() fmt.Println(&quotThe time is&quot, currentTime) }

خروجی این تیکه کد قاعدتا چون هر دفعه زمان همون لحظه رو میخونه و چاپ میکنه هر دفعه با دفعه ی پیش فرق داره یه m= توی نتیجه هست غیر از زمان که یه عدد رو نشون میده کوچیکتر از یک ! این ساعت مونوتکنیکه که برای خطاهای احتمالی در نظر گرفته شده تا دقت زمان بیشتر باشه ! زیاد بهش توجه نکنیم بهتره ! اگه اما خواستیم بیشتر راجع بهش بدونیم بریم اینجا

حالا همون تیکه کد بالا ! رو با یه سری متد ها امتحان کنیم که بجای کل زمان فقط سال رو فقط ساعت رو دقیقه رو یا ماه رو بهمون نشون بده

func main() { currentTime := time.Now() fmt.Println(&quotThe time is&quot, currentTime) fmt.Println(&quotThe year is&quot, currentTime.Year()) fmt.Println(&quotThe month is&quot, currentTime.Month()) fmt.Println(&quotThe day is&quot, currentTime.Day()) fmt.Println(&quotThe hour is&quot, currentTime.Hour()) fmt.Println(&quotThe minute is&quot, currentTime.Hour()) fmt.Println(&quotThe second is&quot, currentTime.Second()) }

توجه کنید که وقتی از متد time.Month() استفاده میکنید خروجی string هست و بشکل نام ماه مثلا : August

ر و اگه بصورت تایپ type توی متد print بیاریمشون بازهم به شکل اول پرینت خواهند شد :

fmt.Printf(&quot%d.%d,%d.%d:%d:%d:%d\n
currentTime.Year(),
currentTime.Month(),
currentTime.Day(),
currentTime.Hour(),
currentTime.Minute(),
currentTime.Second(),
)

output :

The time is 2021-08-15 14:30:45.0000001 -0500 CDT m=+0.000066626 2021-8-15 14:14:45

: برای اینکه خودمون بخوایم تایمی رو ست بکنیم اینجوری انجام میشه :
...


func main() {
theTime := time.Date(2021, 8, 15, 14, 30, 45, 100, time.Local)
fmt.Println(&quotThe time is&quot, theTime)
}

The time is 2021-08-15 14:30:45.0000001 -0500 CDT <......output

:الان بیشتر چالش خودم مقایسه ی بین زمانها بود که اینجا میارمش :
در این زبان چهار رتا راه برای مقایسه ی زمانها وجود داره :

date1 == date 2 این اگه دوتا تایم کاملا یکی باشن ترو میده

date 1 != date2 اینجا اگه یکی نباشن ترو میده

date1.Before(date2) اگه زمان اول قبل از زمان دوم باشه

date1.After(date2) اگه زمان اول بعد از زمان دوم باشه

فقط یه چیزی !
این دوتا فانکشن ۳ و ۴ اگه زمانها کاملا یکی باشن فالس بر میگردونن



فکر میکنم واسه این دفعه همین چند خط کافیه
take it easy...

timegolangزمانگولنگ
۳
۰
khaled moazedi
khaled moazedi
back end developer .. copy writter
شاید از این پست‌ها خوشتان بیاید