私は完全に混乱しています。私はこれが何百万回も尋ねられたことを知っています。そして私は次のような質問を見てきました:
JavaScriptで何かが未定義でないかどうかをテストします
今問題は、チェックを行うときに、あなたができることが複数あることを発見したことです。
オブジェクトが配列であるかどうかを確認する必要があります。そのためには、「length」プロパティが存在するかどうかを確認します。今、私は何を使用しますか?
if (obj.length)
また
if (obj.length === undefined)
また
if (typeof obj.length === "undefined")
また
if (obj.length == null)
または、他の何か?
===
これは型変換を行わないことを理解しています。ifステートメントは「truthy」または「falsey」の値obj.length
を必要としているだけです。つまり、長さが0の場合はfalseを返しますが、それは私たちが望んでいることではありません。それが定義されているかどうかを確認したいと思います。だから私はタイプテストに行きます。しかし、どちらの方法が最適ですか?
これが私が行ったいくつかのテストです。2、3、4が動作します。
間にあるものでごめんなさい。私はこのページのコンソールでそれを行っていました。