それ自体が大きなオブジェクトの属性であるオブジェクトの配列にアクセスすることはできません。配列オブジェクト自体がオブジェクトの属性である場合、配列オブジェクトにアクセスできません
console.log(skillprofiles);
console.log(skillprofiles.skills);
上記の文は、それぞれのオブジェクト(この例では「スキル」)の、一見、有効な配列である属性を持つ2つのオブジェクトの配列を返します。
「スキル」配列属性にアクセスできません。私が最終的に得ようとしているデータは、「item_name」属性です。代わりに、配列の「typeof演算」リターン「オブジェクト」と「スキル」属性の種類を確認し、興味深いことに
skillprofiles[0].skills[0].item_name
:私の知る限りでは、それは経由してアクセスできる必要があります。これは、コード内のオブジェクトの配列を別のオブジェクトに転送するためです。私はこれを正しくやっていると思って、私の声明で確認したようです。実際のデータと
UPDATE:
[{
"skillprofile_id": 144,
"skillprofile_name": " On-boarding",
"start_date": "January 30 2012",
"progress": 0,
"complete_date": " ",
"category": 1053,
"skills": [{
"category": "Acquire: Onboard New Hires",
"item_name": "3. On-boarding a New Hire - Day 1",
"skill_type": "activity",
"object_id": 68,
"duration": "8:00:00",
"sco_status_code": 6,
"action": "activity",
"has_forums": false
}, {
"category": "Acquire: Onboard New Hires",
"item_name": "4. On-boarding Checklist",
"skill_type": "activity",
"object_id": 67,
"duration": "1:00:00",
"sco_status_code": 6,
"action": "activity",
"has_forums": false
}]
}, {
"skillprofile_id": 143,
"skillprofile_name": " Setting Up Systems",
"start_date": "January 30 2012",
"progress": 0,
"complete_date": " ",
"category": 1053,
"skills": [{
"category": "Acquire: Onboard New Hires",
"item_name": "1. Office Organization",
"skill_type": "activity",
"object_id": 65,
"duration": "4:00:00",
"sco_status_code": 6,
"action": "activity",
"has_forums": false
}, {
"category": "Acquire: Onboard New Hires",
"item_name": "2. Welcome to the Team Documents",
"skill_type": "activity",
"object_id": 66,
"duration": "2:00:00",
"sco_status_code": 6,
"action": "activity",
"has_forums": false
}, {
"category": "Acquire: Onboard New Hires",
"item_name": "3. Welcome Documents: Feedback ",
"skill_type": "activity",
"object_id": 150,
"duration": "1:00:00",
"sco_status_code": 6,
"action": "activity",
"has_forums": false
}]
}]
UPDATE 2:
これまでの回答を考えると、私が次のように実行することができるはずと思われる:
$.each(skillprofiles, function(){
console.log(this.skills)
});
私ができますコンソールからこれを行うが、私のコードから実行すると、コンソールステートメントは "undefined"に戻る。
skillprofiles.skills [0] .item_nameまたはskillprofiles.skills.item_nameを試しましたか? –
私は本当の/働くコードを表示しなければならないか、 'skillprofiles'と' skills'オブジェクトを作る場所にコードを含めなければならないと思います。今のところ、これらのオブジェクトに実際に何があるかについての情報はありません。 FYI: 'typeof [1,2,3] ==" object "' - これは配列にとっては正常です。 – jfriend00
データが実際にどのように見えるかを投稿する必要があります。あなたがここに投稿したものから、それを伝えることは不可能です。 – Pointy