PHPでは、次のことができますif(isset($array['foo'])) { ... }
。JavaScriptif(array.foo) { ... }
では、同じことを行うことがよくありますが、これはまったく同じステートメントではありません。array.foo
存在するがfalse
orである場合0
(およびおそらく他の値も)、条件はfalseと評価されます。
isset
JavaScriptのPHPに完全に相当するものは何ですか?
広い意味では、JavaScriptが存在しない変数、値のない変数などを処理するための一般的で完全なガイドが便利です。
更新:11年11か月前にこの質問を投稿しましたが、まだ多くのアクティビティがあります。さて、これを書いたとき、連想配列(別名辞書)にプロパティが存在するかどうかを確認する方法だけを知りたかったので、正しい(私にとっては)答えにはhasOwnProperty
またはin
演算子が含まれると確信しています。ローカル変数またはグローバル変数をチェックすることに興味はありませんでした。
しかし、私はそれをよく覚えていますが、その意図は、書かれている質問では完全に明確ではなく、直接矛盾していることさえあります!連想配列については触れませんでしたが、PHPisset
は他のことも行います。これを、質問で要件を適切に述べることがいかに重要であるか、また、グローバル変数、ローカル変数、オブジェクトプロパティ、辞書キー、および何を持っているかについてのレッスンにしましょう-あなたはヒューイ、デューイ、とルーイ。
その間(ええ)、多くの人がその効果についても答えてくれたので、グーグルでこの質問を見つけた人たちにとっては、私の漠然としたことが私が推測する方法で助けてくれてうれしいです。とにかく、それを明確にしたかっただけです。