Javascript 访问json,将变量名作为字符串传递

Javascript 访问json,将变量名作为字符串传递,javascript,json,Javascript,Json,我在页面中包含了一些json文件,如下所示: <script type="text/javascript" language="javascript" src="json/divaniModerni.json"></script> <script type="text/javascript" language="javascript" src="json/divaniClassici.json"></script> $(divaniModerni

我在页面中包含了一些json文件,如下所示:

<script type="text/javascript" language="javascript" src="json/divaniModerni.json"></script>
<script type="text/javascript" language="javascript" src="json/divaniClassici.json"></script>
$(divaniModerni.modelli).each(function(index, element){ (...) }
}

我现在可以像这样解析文件:

<script type="text/javascript" language="javascript" src="json/divaniModerni.json"></script>
<script type="text/javascript" language="javascript" src="json/divaniClassici.json"></script>
$(divaniModerni.modelli).each(function(index, element){ (...) }
但是可以通过友好方式将文件更改为解析,并将名称传递给函数,就像这样

function show(category)
{
    $(category.modelli).each(function(index, element){ (...) }
}

show(divaniModerni);
我试过:

$(window[category].modelli).each(function(index, element){ (...) }
但它不起作用

编辑:

在each中,我正在基于选定的json元素在表上创建一行:

var divaniModerni = {
"modelli": [
    {
        "nome": "California",
        "num": "5", 
    },
    {
        "nome": "Terra",
        "num": "6", 
    },
    {
        "nome": "Laura",
        "num": "7", 
    },
    {
        "nome": "Nonstop",
        "num": "11",    
    },
    {
        "nome": "Venere",
        "num": "8", 
    },
    {
        "nome": "Comfort",
        "num": "5", 
    },
    {
        "nome": "Infinity",
        "num": "8", 
    },
]
$(divaniModerni.modelli).each(function(index, element){
            if (i == 1)
                riga += "<tr>";
            riga += "<td><figure><a class='anteprime' rel='prettyPhoto[gallery" + i + "]' href='images/divani/" + element.nome + ".jpg'><img src='images/anteprima/divani/" + element.nome + ".jpg' alt='" + element.nome + "'></a><div class='descrizione'>" + element.nome;
            if (element.num > 0)
            {
                for (j = 2; j <= element.num; j++) 
                {
                    riga += "<a style='display:none;' class='anteprime' rel='prettyPhoto[gallery" + i + "]' href='images/divani/" + element.nome + j +  ".jpg'><img src='images/anteprima/divani/" + element.nome + j + ".jpg' alt='" + element.nome + "'></a>";
                }
            }
            riga += "</div></figure></td>"; 
            if (i == categoria.modelli.length)
            {
                riga += "</tr>";
                $('#mostra').append(riga);
            }
            else if (i % 4 == 0)
            {
                riga += "</tr>";
                $('#mostra').append(riga);  
                riga = "<tr>";  
            }   
            i++
        })
$(divaniModerni.modelli)。每个(函数(索引,元素){
如果(i==1)
里加+=”;
riga+=“”+element.nome;
如果(element.num>0)
{

for(j=2;j将对象引用直接传递到each语句中,只对该语句进行迭代


你能把代码放在每条语句中吗?这样我就可以知道你想要完成什么了。这个对象已经有一个结尾“}”,在问题的代码部分之外,因为有一个打印错误。@MisterFrank Updated,希望能有所帮助。