当前位置: 首页 > news >正文

龙华网站建设yihekj线上推广怎么做

龙华网站建设yihekj,线上推广怎么做,5000做网站,wordpress手机注册登录Go 的时间操作 1. time 包 1.1. 时间类型 Go 语言中时间类型有两种: time.Time:表示时间的类型,常见的有两种方式: time.Now():获取当前的时间time.Date():根据指定的年、月、日、时、分、秒、纳秒等创…

Go 的时间操作

1. time 包

1.1. 时间类型

Go 语言中时间类型有两种:

  • time.Time:表示时间的类型,常见的有两种方式:
    • time.Now():获取当前的时间
    • time.Date():根据指定的年、月、日、时、分、秒、纳秒等创建时间
  • time.Duration:表示两个时间点之间经过的时间,以纳秒为单位

1.2. 时间戳

时间戳是自 1970 年 1 月 1 日(08:00:00GMT)至当前时间的总毫秒数。它也被称为 Unix 时间戳(UnixTimestamp)。

1.3. 时间间隔

time.Duration 是 time 包定义的一个类型,它代表两个时间点之间经过的时间,以纳秒为单位。time.Duration 表示一段时间间隔,可表示的最长时间段大约 290 年。

1.4. 时间操作

Go 语言中时间操作主要有两种:

  • 获取时间:time.Now()、time.Date()
  • 格式化时间:time.Format()、time.Parse()

2. 获取时间

2.1. 获取当前时间

Go 语言中通过 time.Now()函数获取当前时间,返回一个 time.Time 类型的本地时间。

func Now() Time
package mainimport ("fmt""time"
)func main() {now := time.Now() // 获取当前时间fmt.Printf("current time:%v\n", now)
}

2.2. 获取指定时间

time.Date()函数可以获取指定的时间,其参数分别是:年、月、日、时、分、秒、纳秒、时区。

func Date(year int, month Month, day, hour, min, sec, nsec int, loc *Location) Time
package mainimport ("fmt""time"
)func main() {// 获取指定时间date := time.Date(2020, 1, 1, 0, 0, 0, 0, time.Local)fmt.Printf("date:%v\n", date)
}

3. 格式化时间

3.1. 时间类型转字符串

Go 语言中可以通过 time.Time 类型的 Format()函数对时间进行格式化,该函数的第一个参数是格式化的模板,模板里面的时间必须是 2006-01-02 15:04:05 这个时间,这个时间是固定的,不然就会出错,第二个参数是要格式化的时间。

func (t Time) Format(layout string) string
package mainimport ("fmt""time"
)func main() {now := time.Now() // 获取当前时间// 格式化的模板为Go的出生时间2006年1月2号15点04分 Mon Janfmt.Println(now.Format("2006-01-02 15:04:05.000 Mon Jan"))fmt.Println(now.Format("2006/01/02 15:04"))fmt.Println(now.Format("15:04 2006/01/02"))
}

3.2. 字符串转时间类型

Go 语言中可以通过 time.Parse()函数对字符串进行解析,生成对应的 time.Time 类型的时间。

func Parse(layout, value string) (Time, error)
package mainimport ("fmt""time"
)func main() {// 加载时区loc, _ := time.LoadLocation("Asia/Shanghai")// 按照指定时区和指定格式解析字符串时间timeObj, err := time.ParseInLocation("2006/01/02 15:04:05", "2020/01/01 00:00:00", loc)if err != nil {fmt.Printf("parse time failed, err:%v\n", err)return}fmt.Println(timeObj)
}

4. 时间常量

const (Nanosecond  Duration = 1Microsecond          = 1000 * NanosecondMillisecond          = 1000 * MicrosecondSecond               = 1000 * MillisecondMinute               = 60 * SecondHour                 = 60 * Minute
)

5. 时间操作

5.1. 获取时间戳

时间戳是自 1970 年 1 月 1 日(08:00:00GMT)至当前时间的总毫秒数。它也被称为 Unix 时间戳(UnixTimestamp)。

func (t Time) Unix() int64
package mainimport ("fmt""time"
)func main() {now := time.Now()timestamp1 := now.Unix()     // 时间戳timestamp2 := now.UnixNano() // 纳秒时间戳fmt.Printf("current timestamp1:%v\n", timestamp1)fmt.Printf("current timestamp2:%v\n", timestamp2)
}

5.2. 时间间隔

time.Duration 是 time 包定义的一个类型,它代表两个时间点之间经过的时间,以纳秒为单位。time.Duration 表示一段时间间隔,可表示的最长时间段大约 290 年。

const (Nanosecond  Duration = 1Microsecond          = 1000 * NanosecondMillisecond          = 1000 * MicrosecondSecond               = 1000 * MillisecondMinute               = 60 * SecondHour                 = 60 * Minute
)
package mainimport ("fmt""time"
)func main() {now := time.Now()// 程序执行到这里会暂停2秒time.Sleep(2 * time.Second)fmt.Println("2 seconds later")// 两个时间相减fmt.Printf("passed %v\n", time.Since(now))
}

5.3. 定时器

time.Timer 类型表示单次时间事件。当定时器到期时,当前时间会被发送给 C,除非定时器是被 AfterFunc 函数创建的。因此,如果程序持有定时器的唯一引用,当定时器触发时,它会被释放,并停止定时器。

func AfterFunc(d Duration, f func()) *Timer
package mainimport ("fmt""time"
)func main() {timer := time.Tick(time.Second) // 定义一个1秒间隔的定时器for t := range timer {fmt.Println(t) // 1秒钟执行一次}
}

5.4. 定时器

time.Ticker 类型代表一个间隔触发的时间事件,它会以一个间隔(例如,1 秒、1 分钟等)触发多次,发送一个事件给一个通道。

func Tick(d Duration) *Ticker
package mainimport ("fmt""time"
)func main() {ticker := time.NewTicker(time.Second) // 定义一个1秒间隔的定时器for t := range ticker.C {fmt.Println(t) // 1秒钟执行一次}
}

6. 时区

Go 语言中通过 LoadLocation()函数加载时区信息,它的参数是时区的名字。时区信息我们可以通过 time 包中的 LoadLocation(name string) (*Location, error)函数获取,它返回一个 Location 对象,然后我们就可以通过 LoadLocation()函数加载时区信息了。

func LoadLocation(name string) (*Location, error)
package mainimport ("fmt""time"
)func main() {// 加载时区loc, err := time.LoadLocation("Asia/Shanghai")if err != nil {fmt.Printf("load location failed, err:%v\n", err)return}// 按照指定时区和指定格式解析字符串时间timeObj, err := time.ParseInLocation("2006/01/02 15:04:05", "2020/01/01 00:00:00", loc)if err != nil {fmt.Printf("parse time failed, err:%v\n", err)return}fmt.Println(timeObj)
}

7. 时区转换

func (t Time) In(loc *Location) Time
package mainimport ("fmt""time"
)func main() {// 加载时区loc, _ := time.LoadLocation("Asia/Shanghai")// 按照指定时区和指定格式解析字符串时间timeObj, err := time.ParseInLocation("2006/01/02 15:04:05", "2020/01/01 00:00:00", loc)if err != nil {fmt.Printf("parse time failed, err:%v\n", err)return}fmt.Println(timeObj)// 按照东八区的时区和格式去解析字符串时间timeObj, err = time.Parse("2006/01/02 15:04:05", "2020/01/01 00:00:00")if err != nil {fmt.Printf("parse time failed, err:%v\n", err)return}fmt.Println(timeObj)// 将timeObj转换到指定时区newTime := timeObj.In(loc)fmt.Println(newTime)
}
http://www.dt0577.cn/news/7092.html

相关文章:

  • 做网站是用ecs还是虚拟主机青岛 google seo
  • 网络营销产品的整体概念外包seo公司
  • ftp工具下载网站源码教程网站提交入口链接
  • 免费网站建设 百度一下网络营销公司注册找哪家
  • 济南做公司网站需要多少钱怎么样推广最有效最快速
  • 手机网站建设的价格广告sem是什么意思
  • 北京西城区建设局网站百度旗下推广平台有哪些
  • 弓长岭网站建设深圳高端网站制作公司
  • 央企门户网站哪家做的最好windows 优化大师
  • 中国建设机械委员会网站晚上看b站
  • wordpress主题如何开发深圳seo优化方案
  • vshtml5网站开发百度联盟官网登录入口
  • 东莞建站公司速推全网天下首选网上推广专员是什么意思
  • 威海微网站建设北京谷歌seo公司
  • 美国网站加速器四川网络推广推广机构
  • 如何修复网站中的死链太原网站建设方案咨询
  • 网站建设中的英文个人网站建设
  • 杭州企业网站优化成都关键词排名推广
  • 图片优化网站西地那非片的正确服用方法
  • 静态网站用什么做最快百度网盘搜索引擎官方入口
  • 网站怎样被百度收录江门关键词排名工具
  • 潍坊外贸建站百度seo排名技术必不可少
  • 北京画册设计公司seo专业论坛
  • WordPress不支持大数据seo网络优化前景怎么样
  • 广西城乡建设厅网站百度百科官网
  • 狗狗和人做网站网站排名优化公司哪家好
  • 在那些网站上做企业宣传好百度下载并安装
  • 成都网站建设龙兵seo外包公司多吗
  • 武汉做营销型网站推广百度收录网址
  • 有九类商标可以做网站名吗网站排名优化多少钱