2011-11-08 17 views
0

オブジェクト内に配列がありますが、配列の内容にアクセスしようとしていますが、正しい構文が得られないようです。私はクロムとそれに付属のデバッガを使用しています。以下のコードは、オブジェクトと配列とそれにアクセスしようとする試みを示しています。私がやっていることに何が間違っていますか?私のアプリケーションでオブジェクト内の配列へのアクセス

コード:

var responseText = Ext.decode(response.responseText); 
alert(responseText.errors[0]); 

クロームコンソール使用して:私の心の中で

responseText.errors 
    Object 
    : Array[1] 
     0: "Error Message" 
     length: 1 
     __proto__: Array[0] 
    __proto__: Object 

responseText.errors[0] 
undefined 

responseText.errors.Array 
undefined 

responseText.errors.Array[0] 
TypeError: Cannot read property '0' of undefined 

を、それが第三の試みを使用しての簡単な問題でなければなりません。なぜそれが未定義なのか私を困惑させている!

+0

あなたの配列がオブジェクトに割り当てられた名前を持っていないのですか? – nscrob

答えて

0

アレイに名前付きオブジェクトがない場合に問題が発生します。

サーバーコードでは一連のメッセージが作成されましたが、メッセージの内容を判断したり、メッセージにアクセスするためにメッセージに渡されたキーはありませんでした。私は以来、いくつかのキーを配列オブジェクトに追加し、jsコードが動作するようになりました。

@VoidMain、それはどちらもうまくいきません。あなたが言ったように、要素にアクセスする方法はありません。

(私はこれを考え出したし、7.5時間前にこの答えを持っていましたが、それを送信できませんでした。非常に迷惑)

0

そのプロパティの名前として0、悪いアイデア...とにかく、あなたはこのようにそれにアクセスすることができます。

responseText.errors['0'] 

をしかし、あなたのサーバーでそれを変更しようと、いくつかのより多くのフレンドリ名を取得します...

関連する問題