2013-12-12 3 views
-2

перефразировав мой вопрос, потому что я сломал его проще, чем я на самом деле сделал это :-PПонимание Массивы в объектах

Я все еще пытаюсь освоиться отношений между объектами и массивами.

Я пытаюсь работать с игрой с объектом, полным массивов, и я хотел бы найти длину массивов в моем объекте, но то, как я это делаю, не работает.

var patterns = { 
    a: [2, 4, 12, 14], 
    b: [2, 4, 8, 12, 14], 
    c: [2, 4, 6, 8, 10, 12, 14], 
    d: [2, 4, 6, 7, 8, 9, 10, 12, 14], 
    e: [2, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14], 
    f: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], 
}; 
for(var pattern in patterns){ 
    console.log(patterns.pattern.length); 
} 

Итак, что лучше ... нет, фактический, способ, которым я должен это делать? И ради изучения, что не так с тем, что я сделал?

+4

«Я хочу сказать' patterns.c.length', но я знаю, что это неправильно», вы, очевидно, никогда не проверял, потому что это правильный путь, чтобы получить доступ к длине' c' массива в 'patterns'. – zzzzBov

+0

'patterns.c.length;'? –

+1

Взял мой 3sec, чтобы проверить ... откройте консоль, скопируйте пасту – Tib

ответ

2

Знаете ли вы, что patterns.c.length неправ?

> var patterns = { 
    a: [2, 4, 12, 14], 
    b: [2, 4, 8, 12, 14], 
    c: [2, 4, 6, 8, 10, 12, 14], 
    d: [2, 4, 6, 7, 8, 9, 10, 12, 14], 
    e: [2, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14], 
    f: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], 
}; 
> patterns.c 
[2, 4, 6, 8, 10, 12, 14] 
> patterns.c.length 
7 
+0

Черт, ха-ха, я не пробовал в простейшей форме. Возможно, я должен объяснить свой сценарий и посмотреть, что не так. Я на самом деле пытался получить длину всех массивов таким образом: для (шаблон var в шаблонах) {console.log (patterns.pattern.length)}, и он убьет меня с ошибками – leilanimanani

+0

@leilanimanani: В этом случае вы должны использовать скобку: 'patterns [pattern] .length'. –

+0

Ах, спасибо огромное @ go-oleg! Это была проблема. – leilanimanani

Смежные вопросы