使用数组在javascript中存储一组带有设置值的变量

时间:2014-08-04 19:10:18

标签: javascript arrays

首先,我完全是js的新手。一周前,我工作的公司将我从手工劳动工作转移到网络开发,因为我很便宜,学得很快,并且有一些IT /编程经验(但有0个网站开发经验)。

我正在处理一张表单,用于订购我公司制作的系统。我有一组带有设定值的零件#变量。我需要它们等于1个零件号,同时存储原始变量的名称和原始值。如果我使用数组来执行此操作,在索引时会丢失原始变量名吗?

我已经阅读了关于数组和变量的所有w3页面。我还阅读了有关对象的内容,并想知道将对象创建为对象可能是更好的解决方案。

这是我已经获得的代码。

case '16 x 32':

        var Pn_VTP1632PKN_qty = [var Pn_VFH2014_qty = 1, var Pn_52001_qty = 4, var Pn_55015_qty = 2, var Pn_SDT3011_qty = 4, var Pn_10507_qty = 2, var Pn_PAC1007_qty = 1, var Pn_UT22674_qty = 3, var Pn_55031_qty = 3];
        var Pn_VTP1632PKA_qty = [var Pn_VFH2014_qty = 1, var Pn_52001_qty = 4, var Pn_55015_qty = 2, var Pn_SDT3011_qty = 4, var Pn_10507_qty = 2, var Pn_PAC1007_qty = 1, var Pn_UT22674_qty = 3, var Pn_55031_qty = 3,
             var Pn_55024_qty = 8, var Pn_AC0002_qty = 1, var Pn_22116_qty = 7];

        if(trim($('#Include_Aluminum_Coping option:selected').text()) == 'Yes') {
            Pn_VTP1632PKA_qty;
        } else {
            Pn_VTP1632PKN_qty;
        }

        TS = 193;
        TL = 396;

1 个答案:

答案 0 :(得分:2)

听起来你想要一个对象而不是一个数组。类似的东西:

var Pn_VTP1632PKN_qty = { 
    Pn_VFH2014_qty : 1, 
    Pn_52001_qty : 4, 
    Pn_55015_qty : 2,
    // an so on...
};

现在你可以快速(分开丑陋的变量名称)找出Pn_VFH2014_qty这样的数量:

var howMany = Pn_VTP1632PKN_qty.Pn_VF2014_qty;  

您可以使用以下内容遍历所有组件:

for (var key in Pn_VTP1632PKN_qty) {
   if (Pn_VTP1632PKN_qty.hasOwnProperty(key)) {
       console.log(key + ":" Pn_VTP1632PKN_qty[key]);
   }
}

但我怀疑你应该寻找一种更好的方法来处理你的数据,因为看起来你正试图将大量数据硬编码到一个网页中,该网页应该从例如连接到的网络服务中检索数据库。