Literal Arrays数组JavaScript

时间:2011-03-10 16:09:08

标签: javascript jquery multidimensional-array

我有一个像这样的JavaScript代码:

var faqOpener = {
   defaults: {
      idSelector: "#id",
      id: "2"
   },
...
  if (options && !jQuery.isEmptyObject(options))
     $.extend(this.defaults, options);
...

如何将该变量转换为文字数组数组,如:

var faqOpener = {
   defaults[]: {
      idSelector: "#id",
      id: "2"
   },
...

编辑:我将使用其他javascript代码中的默认变量。如示例所示,它在文字数组数组中只有一个元素但是我应该正确定义它并且能够传递可变长度(例如,具有3个数组或1个或更多依赖的文字数组的数组)文字数组的数组

5 个答案:

答案 0 :(得分:4)

var faqOpener = {
   defaults: [{
      idSelector: "#id1",
      id: "1"
   }, 
   {
      idSelector: "#id2",
      id: "2"
   }],
...

或直接

var defaults = [{
   idSelector: "#id1",
   id: "1"
}, 
{
   idSelector: "#id2",
   id: "2"
}];

问题还不清楚......

答案 1 :(得分:3)

var faqOpener = {
   defaults: [
       { idSelector: "#id", id: "2" },
       { idSelector: "#id1", id: "21" }
   ]
};

然后您可以访问默认值中的对象:

faqOpner.defaults[0] 
faqOpner.defaults[1]

答案 2 :(得分:1)

你想让faqOpener.defaults成为一个对象数组{idSelector,id}吗?在JS中,数组文字用方括号分隔,所以它看起来像这样:

var faqOpener = {
    defaults: [ 
       {
              idSelector: "#id",
              id: "2"
           },
           {
              idSelector: "#id3",
              id: "3"
           },
        ]
    };

这不是一个数组数组,确切地说;它是一组关联数组。 JavaScript中的“数组”是具有某些特殊特征的特定对象类型。任何旧的JS对象都是一个关联数组。

答案 3 :(得分:1)

试试这个:

var faqOpener = {
   defaults: [{
      idSelector: "#id",
      id: "2"
   }],
...

可以像这样使用:

faqOpener.defaults[0].id

答案 4 :(得分:0)

这通常称为JSON(JavaScript Object Notation):

http://www.json.org/example.html