0
var food = ["fruit=apple", "fruit=banana", "drink=cola"];
var vars = [];
for(var i = 0; i < food.length; i++)
{
var key = food[i].substring(0, food[i].indexOf("="));
if (vars[key] == undefined){
vars[key] = [];
}
vars[key].push(food[i].toLowerCase().split("=")[1]);
}
console.log(vars);
console.log(vars.length);
출력됩니다. 그러나 문제는 길이가 0이라는 것입니다. 어떻게 [fruit : Array (2), drink : Array (1)]가 포함 된 배열을 명확하게 볼 수 있기 때문에 그것이 가능한지 이해할 수 없습니다. 하지만 여전히 길이라고 말합니다 : 0;배열을 포함하지만 길이가 0 인 자바 스크립트 배열은
나는 for 루프와 바르 배열을 반복하고 싶지,하지만 난 루프 내에서 vars.length를 사용할 수 없습니다 때문입니다.
또는 다른 방법으로 vars를 반복 할 수 있습니다. anny 제안을 환영합니다.
길이는 얼마입니까? 2, 열쇠의 숫자 때문에, 3, 항목의 총 수 때문에, 또는 다른 뭔가? – Andy
예 2가되어야합니다. 나는 또한 지수가 키워드가 필요합니다. food [fruit] .length라고 말하면 음식 배열 안에있는 과일 배열에 얼마나 많은 항목이 있는지보고 싶습니다. – ruben450
맞아, 그냥 객체'{}'를 사용하고 @ hsz의 해결책을 사용하여 길이를 얻으십시오. – Andy