Go テンプレートの範囲を使用した配列内の最後の項目の検出
Go テンプレートでは、range ディレクティブを使用して配列を反復処理するときに、最後の項目の後に末尾のカンマを出力しないようにするのは難しい場合があります。これにより、データをテキストとしてレンダリングするときに、予期しない出力や不正な出力が発生する可能性があります。
問題:
次の Go テンプレートは、配列内の各項目の後にカンマを出力します。
{{range $i, $el := .items}}{{$el}},{{end}}
ただし、望ましい出力は最後の項目の後にピリオドを出力することです:
1,4,2.
解決策:
後にピリオドを出力するには配列の最後の項目の場合、テンプレートは次のように変更できます:
<code class="text">{{range $i, $el := .items}}{{if $i}},{{end}}{{$el}}{{end}}.</code>
ここでのコツは、条件式 {{if $i}} を使用して、各項目の前にカンマ区切り文字を出力することです。最初のものについては。範囲ディレクティブの右中括弧の後にピリオドを追加することで、プログラムは最後の項目の後にピリオドが出力されるようにします。
この更新されたテンプレートは配列を反復処理し、各項目をカンマ区切りで出力します。最初のものを除いて。最後の項目の後には、カンマの代わりにピリオドが出力されます。
以上がGo テンプレート範囲の最後の項目の後にピリオドを印刷するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。