2017-05-08 15 views
0

言ってやる例えば、私は3レベルの深javascriptオブジェクトを持っている場合JavaScriptでネストされたオブジェクトにnullオブジェクトが存在するかどうかをチェックする方法は?

{CONN_INFO: {CFGSwitch: {412: {}}}} 

どのように私はそれがネストされているかどうかを判断する関数を書くことができますか? そして第二に、どのように私は、空のオブジェクト{}は、このような"{}"

+1

JSONを実際に使用している場合、構文が正しくありません。 JSONでは、すべてのプロパティ名を二重引用符で囲む必要があります。 – Manngo

+0

'{}'は 'null '値ではありません。それは空のオブジェクトです。アラート({} == null)なら 'false'を返します。 – Manngo

+0

申し訳ありませんが、ありがとうございます。私はオリジナルを更新しました。 – tchan

答えて

1

どのように私はそれがネストされているかどうかを判断する関数を書くことができますを確認することができますか?

現在のオブジェクトのすべてのキーについては、JSONのネストが存在する場合はその型をチェックします。

次に、空のオブジェクト{}を「{}」などの文字列に変換するにはどうすればよいですか?

ネストされたJSONオブジェクトが見つかった場合は、Object.keys(currentJSONObj).lengthを使用してそのキーの長さを確認します.0の場合は空のJSONです。だから、最初の場所で空のJSONオブジェクトを持っているキーに "{}"を再割り当てしてください。

+0

2番目の部分に再帰関数を使用する必要がありますか?どのように私はそれを書くことができる任意のアイデア?私は今入れ子の深さを確認する関数を持っています。 – tchan

+0

はい。再帰関数が答えです。そのキーの値が再びJSONであれば、そのオブジェクト内のすべてのキーに対して呼び出されます。 –

0

反復として文字列に変換し、Object.keys(current_obj).length

関連する問題