3
私はエリクシルを学んでいますが、nil
がJavaScriptでnull
と同じであるかどうか疑問に思っていました。エリクサー:何もないの意味
私はエリクシルを学んでいますが、nil
がJavaScriptでnull
と同じであるかどうか疑問に思っていました。エリクサー:何もないの意味
これらは似ていますが、どちらも値の欠如を示すためによく使用されます。 JavaScriptでは、!!null
はfalse
と評価され、エリクシルでは!!nil
と評価され、false
と評価されます。ただ、JavaScriptのnull
ように、あなたは、例えば、ブール値のコンテキストで「falsy」の値としてnil
を使用することができます。
if nil do
IO.puts "foo"
else
IO.puts "bar"
end
は、私は2つの間の多くの相違を考えることはできません「バー」
を印刷します、おそらくいくつかの角の場合以外。たとえば、null > 0
はJavaScriptでfalse
と評価され、nil > 0
はエリクシルでtrue
と評価されます。
エリクサーで 'nil> 0'が真になるという事実は、ワトの話を思い出させます:https://www.destroyallsoftware.com/talks/wat –
エリクサーの' nil'はアトムです: 'is_atom (nil)#⇒true'となります。 (実際には 'nil> 0'は真実です)。 – mudasobwa
Erlangでは、' true'、 'false'、' nil'は原子であることは明らかですが、Elixirではそれがはっきりしません'nil ==:nil#=> true'を通してあなた自身でテストすることができます。 – Hauleth