【问题标题】:Understanding Arrays in Objects [closed]了解对象中的数组 [关闭]
【发布时间】:2013-12-12 18:52:57
【问题描述】:

重新表述我的问题,因为我把它分解得比我实际做的更简单:-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);
}

那么,什么是更好的......不,我应该这样做的实际方式?而且为了学习,我做的有什么问题?

【问题讨论】:

  • “我想说patterns.c.length,但我知道这是错误的”您显然从未测试过它,因为这是访问patternsc 数组长度的正确方法。
  • patterns.c.length; ?
  • 花了我 3 秒测试...打开控制台,复制粘贴
  • 是的,我没有那么简单地测试它,我应该有,我实际上尝试做的事情我写在下面作为对克劳迪的回答的回应......所以我想我的旅行是' t 试图获得长度,它试图以我的方式获得长度。
  • @leilanimanani:是的。通常在提出问题时,要么直接发布你正在做的事情,要么至少检查你的简化是否存在相同的错误。如果它没有,但你认为它会,那么你离自己找出错误更近了一步!

标签: javascript arrays javascript-objects


【解决方案1】:

你怎么知道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

【讨论】:

  • 该死,哈哈,我没有尝试过最简单的形式。也许我应该重新解释我的情况,看看有什么问题。我实际上试图以这种方式获取所有数组的长度: for(var pattern in patterns){console.log(patterns.pattern.length)} 它以错误的方式让我回过神来
  • @leilanimanani:在这种情况下,您应该使用括号表示法:patterns[pattern].length
  • 啊,非常感谢@go-oleg!这就是问题所在。
猜你喜欢
  • 2021-09-29
  • 1970-01-01
  • 1970-01-01
  • 2015-02-05
  • 2017-04-22
  • 1970-01-01
  • 1970-01-01
  • 2020-03-22
  • 2015-01-19
相关资源
最近更新 更多