范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

golang从入门到精通,模板内置函数自定义函数管道符的使用

  这篇文章将学习模板内置函数的使用、自定义函数的使用、管道符的使用D:gosrcgo7demo1main.go源码及解析//本节将学习模板内置函数的使用、自定义函数的使用、管道符的使用 package main  import (    "net/http"    "text/template"    "time" )  // TimeToString 声明TimeToString函数,将time.Time转换成"2006-01-02 15:04:05"格式的字符串 func TimeToString(time time.Time) string {    return time.Format("2006-01-02 15:04:05") } func Add(int1 int) int {    return int1 + 1 } func Index(w http.ResponseWriter, r *http.Request) {    // FuncMap:定义从名称到函数的映射的一一映射。    // time_to_String是定义的名称,TimeToString是执行的函数    funcMap := template.FuncMap{       "time_to_String": TimeToString,       "int_add_1": Add,    }    //New:给名称funcMap分配一个新的、未定义的模板t。    t := template.New("index.html").Funcs(funcMap)    //func ParseFiles(filenames ...string) (*Template, error)    //ParseFiles从"index.html"中解析模板。    //如果发生错误,解析停止,返回的*Template为nil。    //当解析多个文件时,如果文件分布在不同目录中,且具有相同名字的,将以最后一个文件为主。    //当解析多个文件时,如果文件分布在相同目录中,且具有不同名字的,将以第一个文件为主。    files, _ := t.ParseFiles("index.html", "home.html")    //渲染模板文件,并将定义的map类型的数据传入模板文件中    //由于采用的Execute方法,那么渲染的模板应当遵循template.ParseFiles的解析顺序    _ = files.Execute(w, map[string]interface{}{       "score": 18.5,       "year":  []int{2018, 2019, 2020, 2021, 2022},       "str1":  "golang 从入门到精通",       //将当前时间输出到模板       "ctime": time.Now(),       //输出到模板1个int数据       "int1": 18,    }) } func main() {    http.HandleFunc("/", Index)    _ = http.ListenAndServe(":80", nil) }D:gosrcgo7demo1index.html源码及解析            index   
     

index.html

使用管道符号进行处理 score,保留小数点后2位 : {{.score | printf "%.2f"}} 使用函数进行处理 score,保留小数点后2位: : {{printf "%.2f" .score}} 使用index函数获取[]string内值 : {{index .year 1}} 使用len函数获取string长度 : {{index .str1 1}} 使用println函数输出字符串(带换行) : {{println .str1}} 使用printf函数输出字符串和类型 : {{printf "str1的值是:%v , 类型是: %T" .str1 .str1}} 使用自定义函数time_to_String格式化输出当前时间.ctime : {{time_to_String .ctime}} 使用自定义函数int_add_1处理.int1 : 当前是:{{.int1}} 执行函数后是:{{int_add_1 .int1}}
  执行结果:=== RUN TestIndex main_test.go:15: http://127.0.0.1:50010/index main_test.go:19: index
             

index.html

使用管道符号进行处理 score,保留小数点后2位 : 18.50 使用函数进行处理 score,保留小数点后2位: : 18.50 使用index函数获取[]string内值 : 2019 使用len函数获取string长度 : 111 使用println函数输出字符串(带换行) : golang 从入门到精通 使用printf函数输出字符串和类型 : str1的值是:golang 从入门到精通 , 类型是: string 使用自定义函数time_to_String格式化输出当前时间.ctime : 2022-01-06 18:08:10 使用自定义函数int_add_1处理.int1 : 当前是:18 执行函数后是:19
--- PASS: TestIndex (0.02s) PASS   执行结果是通过单元测试得到的,当然也可以直接进行go run .启动web服务,通过浏览器URL进行查看。下面是单元测试的源码package main import ( "io/ioutil" "net/http" "net/http/httptest" "testing" ) func TestIndex(t *testing.T) { handler := http.HandlerFunc(Index) app := httptest.NewServer(handler) defer app.Close() _url := app.URL + "/" + "index" t.Log(_url) response, _ := http.Get(_url) defer response.Body.Close() bytes, _ := ioutil.ReadAll(response.Body) t.Log(string(bytes)) }

中国市场高端安卓手机份额下跌8,这意味着什么?2022年3月24日消息,CounterpointResearch发布手机市场研究报告,2021年,中国600美元(约3828元人民币)以上价位的安卓智能手机市场份额从2020年的GalaxyZFlip4跑分曝光配高通骁龙8Gen1芯片三星可能将会在今年8月发布GalaxyZFold4和GalaxyZFlip4。根据国内数码博主i冰宇宙提供的信息,GalaxyZFlip4已经出现在GeekBench跑分库上,显示红米k50跳水380元,12256GB天玑8100,等什么618红米的手机产品一直都以性价比在国内的手机市场,甚至在国际手机市场闻名。红米的手机产品也因为优秀的配备以及优越的使用体验能够在手机市场上占据一席之地。以红米今年所发布的红米k50手机iOS16什么时候发布?苹果全力赶工中!全新交互界面等对于即将召开的6月WWDC开发者大会来说,苹果不会放大家的鸽子,也就是说iOS16届时会正常亮相,而相应的工作也在推进中。根据彭博社MarkGurman最新爆料,iOS16的首个公苹果macOSMonterey12。4(21F79)发布苹果macOSMonterey12。4发布。macOSMonterey提供了突破性的新功能,可帮助用户以新方式进行连接完成更多任务并在他们的Apple设备上无缝工作。FaceTim全新设计,质感十足,OPPOReno8Pro上手体验全新登场的OPPOReno8Pro可以说在外观上相比前代有很大的变化,特别是背面的颜值引发了不小的争议,去除摄像头模组阶梯的流云双镜设计,后置摄像头全平的设计真的好评。还有与旗舰F杨磊共享单车笑到最后的人,18岁结缘500强副总,获马云6次撑腰你的共享押金退了吗?回想当年,光是共享单车APP,就足够填满手机的一个屏幕,可见其竞争之激烈。那么,现在到底是谁成了最后的赢家?很多互联网行业都流传着这样一个定律老大跟老二打架,老乐视超级电视九岁生日再耍宝乐视还在,何止奇迹简直不科学九年前的5月5日,是乐视超级电视诞生的日子。早几年,每年的这个时候乐视超级电视都会举行大规模大力度的促销行动。但最近几年,乐视超级电视在这个日子也日渐消沉。不过,今天乐视超级电视又发布不到一年下跌1900元,12GB256GB,120W闪充旗舰售价大跳水都说苹果公司是手机行业风向标,一旦苹果公司做了一些改变,除非是其它手机厂商在技术层面无法借鉴到的,不然都会快速学习苹果,无论是刘海屏还是不送充电器等都是如此,所以当苹果公司推出1TvivoX80使用体验闺蜜聚会拍照,我不用争C位了闺蜜聚会除了下午茶和火热八卦,还有就是拍拍拍啦!每次和闺蜜聚会重头戏总是拍照,各种自拍合拍,不过每次去聚会我的手机像素低,都是她们拍好发给我,自从男朋友给买了vivoX80,姐妹聚被抖音蹭了几次后,美团终于要反击了作者丨柳丁是编辑丨木鱼出品丨壹览商业你能想象在一个外卖平台上看直播吗?你的外卖从配菜到成品,一览无余地展现在你面前,顺便还能看吃播陪吃。瞬息万变的互联网时代,直播这种颇具实时性和交
基于SSMMySQL开发的人力资源管理系统科讯人力资源管理系统项目演示地址httpdemo。kexunsoftware。comlogin账号lidong密码123注若访问报错或者无法访问,可与我联系修复微信kexunsof苹果用户转华为P50,单纯想尝试一下鸿蒙系统,结果没有让我失望在苹果和华为之间徘徊不定,最后我决定买了华为P50,支持一下国产,虽然用了这么多年苹果手机,在使用上已经习惯iOS了,但是就是想尝试一下鸿蒙系统。首先外观方面,万象双环设计令人惊艳右耳听力正常,但左耳听力是重度听力损失的情况下不配助听器可以吗?你好!孩子右耳听力正常,但左耳听力是重度听力损失不配助听器行不行?您好,根据您说的情况,我觉得应该配助听器。如果不配可能会出现有以下问题1在孩子左耳方向的声音会听不清楚,然后他会一攀升diy主机怎么样?为什么价格比自己买配件的便宜?很高兴能回答你的问题,个人观点!希望能帮到你。销量大了可以定制阉割版,价格肯定就下来了,赚的也是辛苦钱便宜的原因一般是因为拿货价便宜。第二个就是配件缩水。同型号不同品牌,一台主机下各大软件推出IP属地显示,意义何在?IP属地就是IP所在归属地的简称,透过此功能,能看到用户发帖投博评论发视频所在的大致地点,是在国内还是在国外,是国内某个省市区还是国外的某个地方,都会有比较清晰的显现,其他人也会根如何做好外贸?首先感谢提问,根据多年经验,总结以下几点第一,首先产品的选择,就是确定卖什么产品,找什么样的供应商,如果自己有工厂,那就在自己现有产品下功夫,没有工厂,就要自己开发适合自己工厂来配为什么感觉越来越多的人宁愿购买落后的机顶盒,也不愿更换智能电视?再智能的电视也会落后,再落后的机顶盒也能换新。有脑就有常识,换电视不如换机顶盒方便抠鼻这类人主要是老年人,尤其是没有文化或文化低下的老年人宁愿购买落后的机顶盒收看电视节目。还有一个吴雄昂能否翻盘?从法律视角看安谋科技控制权之争2022年4月28日1324,微信公众号爱集微上发布了题为独家软银对中国半导体野心暴露试图重新控制安谋科技的文章。2022年4月29日1804,微信公众号爱集微再次发布了题为拒绝被商业贸易的分水岭马云今天的支付宝和淘宝几乎成了每个人的生活必备应用。买东西再也不必亲往店铺,网购即可。做到这些的,就是马云。他改变了传统的购物和交易方式,影响了人们生活方式。网上购物,对实体店铺确实形推荐这款类型转换神器!Mapstruct新出的Spring插件Mapstruct可以代替BeanUtil来进行DTOVOPO之间的转换。它使用的是Java编译期的annotationprocessor机制,说白了它就是一个代码生成器,代替你手二富士X系列相机推荐!这10款值得购买二富士X系列相机富士胶片秉承相机是用来拍摄作品的工具这一概念,不断地研发摄影师喜爱的相机。为了能够随时随地进行摄影,及时捕捉决定性瞬间的出彩照片,富士胶片立足于相机该有的样子,通过