Please announce here

[Shopify]Liquidの文字列Stringを数値Integerに変換する方法

 Shopify Liquid 文字列 数値

Liquidで文字列を扱っている時に数値に変換したい!という時ってありませんか。ちょうど先日Liquid内の処理を書いている時に、文字列(String)で情報を取得したのだけど、数値(Integer)に変換して足し算や引き算をしたい。という場面に出くわしたので記録として書いておきます。

 

文字列を数値に変更する必要性

例えば、"1"という文字列と1という数値を足したい時に、意図せず数値が文字列に変換されてしまい、"11"になってしまうこともあるのです。

  • やりたいこと
    1(数値)+ 1(数値)= 2(数値)

 

  • 意図せずなってしまう可能性があるもの

    "1"(文字列)+ 1(数値)= "11"(文字列)
    "1"(文字列)+ "1"(文字列)= "11"(文字列)

のように型が違うと、意図せず違う結果になってしまう場合があるのです。これを避けるために最初に数値に合わせて計算する必要があります。

 

文字列を数値に変換する方法

それでは早速、文字列を数値に変換する方法です。

{% assign variable1 = variable1 | plus: 0 %}

もしくは

{% assign variable2 = variable2 | times: 1 %}

このように値にあらかじめプラスやかけるを付けることで、数値に変換することができるのです。

1つ目のplus 0 は単純に0を足すので値は変わりませんし、2つ目の times 1 もかける1なので、値が変わることはありません。

 その後に、プラスをするなり、かけるをするなり、すればちゃんとした計算結果が得られるはずです。

 

ShopifyでLiquidの文字列Stringを数値Integerに変換する方法 まとめ

以上、今回は短めの記事でしたが、文字列を数値に変換する方法でした。意外と英語ソースでしか情報を見つけられなかったのでぜひ参考にしてみてください。

Shopifyの開発をしていると、この変換、結構使う頻度高い気がします。ここ1ヶ月ほどで何回か調べました!もしこの記事が少しでも役に立ったら嬉しいです。

それでは最後までお読みいただきありがとうございました。本日も良い1日を!

EC Penguin おすすめ本

Leave a comment

Please note, comments must be approved before they are published