1
if x then foo() end
を検出するのに、Luaではnilではありません。xを検出するためにfoo()endを使用すると、何が起こるのでしょうか?xを検出するためのfoo()end`はLuaではnilです。
手元のプロジェクトにはこのように多くの検出がありますので、私はそれらをすべて変更してもらうか、または手放すべきか提案が必要です。
ありがとうございました。
if x then foo() end
を検出するのに、Luaではnilではありません。xを検出するためにfoo()endを使用すると、何が起こるのでしょうか?xを検出するためのfoo()end`はLuaではnilです。
手元のプロジェクトにはこのように多くの検出がありますので、私はそれらをすべて変更してもらうか、または手放すべきか提案が必要です。
ありがとうございました。
条件式の目的に応じて、式はブール値false
または式がnil
の2つの条件でfalseと見なされます。
したがってif x then foo() end
は、x
がnil
でもfalse
でもない場合はfoo
となります。それをnil
に限定したい場合は(通常そうではありません)、x ~= nil
を使用します。
主に、コード内で同じものを示すのに 'false'と' nil'を使用しているのか、それらがプロジェクトの文脈で異なる意味とセマンティクスを提供しているのかを調べます。それが前者であれば、私はそれを変更することはありません。 – greatwolf