我正在阅读JavaScript教程。我必须显示一个数组的长度,但在调用时我得到了上述错误。
var bio = {
"portfolio": [
{
"name": "Sambit Mishra",
"role": "Frontend Web Developer",
"contacts": {
"mobile": "+91-8888888888",
"email": "xyz@gmail.com"
},
"skills": ["Awesome ", "Frontend Design ", "Javascript ", "Python "],
"message": "Have a great day ahead."
}
]}
if(bio["skills"].length > 0) {
$("#header").append(HTMLskillsStart);
var formattedSkill = HTMLskills.replace("%data%", bio.skills[0]);
$("#skills").append(formattedSkill);
formattedSkill = HTMLskills.replace("%data%", bio.skills[1]);
$("#skills").append(formattedSkill);
formattedSkill = HTMLskills.replace("%data%", bio.skills[2]);
$("#skills").append(formattedSkill);
formattedSkill = HTMLskills.replace("%data%", bio.skills[3]);
$("#skills").append(formattedSkill);}
我在这里推断的是bio [“技能”]的长度属性显示为未定义。帮助将得到承认。谢谢..
答案 0 :(得分:1)
你的路径错了。第一代对象中没有属性skills
。相反,路径似乎是:
bio.portfolio[0].skills
或者,如果您愿意
bio['portfolio'][0]['skills']
答案 1 :(得分:0)
使用此bio.portfolio[0]['skills'].length
或bio.portfolio[0].skills.length
rathen然后bio["skills"]
答案 2 :(得分:0)
错误消息表示bio["skillls"]
不存在。我想bio.portfolio[0].skills.length
就是你想要的。 portfolio
是对象bio
的属性,其数组为值。此数组的第一个元素是具有属性skills
的对象。此属性的值是一个数组,因此具有长度。