相当于`.push()`用于对象而不是数组

时间:2017-02-07 17:25:06

标签: object

我最初有一个带有子数组的数据数组,但是我需要将它变成一个对象。

我的最终数据应该类似于:

var invalidFields = {
    0: {
        lastName: <input type="text" ... />,
        city: <input type="text" ... />,
        ...
    }
    2: {
        lastName: <input type="text" ... />,
        city: <input type="text" ... />,
        ...
    }
}

请注意,上面没有键1

我无法将数据添加到对象中。我正在迭代一个现有的数组并找到无效的匹配,然后想要&#34; push&#34;他们到一个新的对象。

例如,顶级多维度的密钥,例如02在我的代码中存储为passengerIndex,但我无法确定如何添加它。

我正在使用invalidFields = {}

进行初始化

我试过了。 invalidFields[passengerIndex]

我也试过invalidFields.passengerIndex

invalidFields = invalidFields[passengerIndex]

但没有工作。

1 个答案:

答案 0 :(得分:1)

假设您正在使用Javascript

您需要找到另一个变量名,可能在数字前添加下划线,因为变量不能以数字开头 见https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Grammar_and_types

  

JavaScript标识符必须以字母,下划线(_)或美元符号($)

开头

或者您可以使用地图https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map