Go HTML 템플릿에서 부동 소수점 형식 지정
Go HTML 템플릿에서는 표시를 위해 부동 소수점 값 형식을 지정해야 할 수도 있습니다. 언급한 대로 .go 파일에서 strconv.FormatFloat를 사용하여 float64를 문자열로 변환하는 것은 간단합니다. 그러나 이 접근 방식은 템플릿에 적합하지 않습니다.
대신 HTML 템플릿 내에서 부동 소수점 형식을 지정하는 여러 옵션이 있습니다.
다음은 이러한 옵션을 보여주는 예제 코드 조각입니다.
import ( "fmt" "html/template" "os" ) // MyFloat is a custom type for formatting floats. type MyFloat float64 // String implements the String() method for converting MyFloat to a string. func (mf MyFloat) String() string { return fmt.Sprintf("%.2f", float64(mf)) } func main() { t, err := template.New("").Funcs(template.FuncMap{ // Register the MyFormat function to format floats using a custom format string. "MyFormat": func(f float64) string { return fmt.Sprintf("%.2f", f) }, }).Parse(templ) if err != nil { panic(err) } m := map[string]interface{}{ "n0": 3.1415, "n1": fmt.Sprintf("%.2f", 3.1415), "n2": MyFloat(3.1415), "n3": 3.1415, "n4": 3.1415, } if err := t.Execute(os.Stdout, m); err != nil { panic(err) } } const templ = ` Number: n0 = {{.n0}} Formatted: n1 = {{.n1}} Custom type: n2 = {{.n2}} Calling printf: n3 = {{printf "%.2f" .n3}} MyFormat: n4 = {{MyFormat .n4}}`
이 코드를 실행할 때(예: Go Playground에서) 다음과 같은 출력이 표시됩니다.
Number: n0 = 3.1415 Formatted: n1 = 3.14 Custom type: n2 = 3.14 Calling printf: n3 = 3.14 MyFormat: n4 = 3.14
위 내용은 Go HTML 템플릿에서 부동 소수점 숫자 형식을 지정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!