🔢
Luauにおける数値リテラルの桁区切りについて
Luau では、数値リテラル内でアンダースコア(_)を用いた桁区切り記法が利用可能です。
これにより、長い数値も桁ごとに区切って記述でき、コードの可読性を上げることができます。
Luau における数値リテラルの桁区切りの仕様
local num: number = 1_000_000
上記のように、数字と数字の間にアンダースコアを記述することで桁区切りが行われます。
内部的には、1_000_000
は 1000000
として処理されます。
-
記法上の制約
1000_
は暗黙的に1000
に変換されますが、_1000
は構文エラーとなるため、数値リテラルの先頭にはアンダースコアを置くことはできません。
桁区切り数値リテラル同士の計算
以下のように、桁区切り数値リテラル同士の計算も通常通り行えます。
--!strict
local number1: number = 1_000_000
local number2: number = 13_000_000
-- 数値同士の演算も通常通り行えます。
local total: number = number1 + number2
print("数値1: " .. number1) -- 出力例:1000000
print("数値2: " .. number2) -- 出力例:13000000
print("合計: " .. total) -- 出力例:14000000
Discussion