2017-12-27 7 views
-3

私はConsole.logを使用して、関数の配列値を識別しています。 Iが配列(0)が存在する場所の数を参照コンソール検査中:特にJavascript - Chrome Console - 「Array(0)」とはどういう意味ですか?

enter image description here

を、私はキーと値のペアの配列を作成した(以下「X」と「testedElements」(同じオブジェクトを参照してください)

「x」を展開すると、「配列(0)」が配列要素の最上部に位置しています...「Array(0)」の意味は不明です。 。この要素が配列であることを示していますか? enter image description here

実際には構造体を再作成しようとしていました。コンソールの写真の上部に「full MENU」と表示されていますが、testsElements/xの中央に「Array(0)」と表示されています...

+6

長さがゼロの配列を意味します。 – JJJ

+0

配列として初期化されますが、オブジェクト構造を持ちます。 –

答えて

1

これは、コンソールで値の長さが0の配列を表示する方法です。 JavaScriptの性質上、空の配列にはフィールドが含まれている可能性があります。

var obj = {}; 
obj.array = []; 
obj.array.myField = 1; 
console.log(obj); 

これは、コンソールに次のようにログに記録します。

> {array: Array(0)} 

とするとき、私はそれを展開します。

{array: Array(0)} 
    array: Array(0) 
    myField: 1 
    length: 0 
    __proto__: Array(0) 
    __proto__: Object 

これは、名前のフィールドが配列内のアイテムではないことを示しています。

連想配列(名前付きインデックスを持つ配列)が必要な場合は、プレーンJavaScriptオブジェクトを使用する必要があります。

var obj = {}; 
obj.A = 10; 
+0

時には、最も基本的な質問をしなければならない場合があります.4で私を殴ることは、質問と回答のフォーラムを習得するという目的を少し破ることです。この回答は機能します。私たちの中には、より良いか悪いかにかかわらず、その険しい学習曲線があります。ちなみに、この回答は多くの助けになりました。私は "elementWithNav = Array()"から "elementWithNav = {}"への初期化を変更し、これが私の問題を解決しました。ありがとうワズナー/ミケル。 – si2030

+0

@ si2030私はあなたの質問をd​​ownvoteしなかったが、私はあなたの質問があなたの実際の問題について尋ねなかったので人々がdownvoteかもしれない理由だと思う。それは個人的には役に立ちましたが、問題は症状(コンソールでは予期せぬ表示)であり、問​​題ではない(アレイと名前付きキーのオブジェクト)ため、他の人には役に立たないかもしれません。 – Wazner

関連する問題