[英]How to add a collection in Javascript objects
您好,我正在用JavaScript创建一个二维数组。 该对象看起来像这样。
totalCells = [
lineNumber = 0,
cells = []
];
如何将其添加到此数组?
我可以做totalCells.push(1, ['a', 'b', 'c']);
但这引发了错误: cells is not defined
您无法做您想做的事情。 如果要在数组中键入键,请使用一个对象。 然后,您可以执行以下操作:
var totalCells = {
lineNumber: 0,
cells: []
};
// some logic...
totalCells.lineNumber = 1;
totalCells.cells = ['a', 'b', 'c'];
或者,您可以有一个对象数组,将cells
直接绑定到多个lineNumbers:
var totalCells = [];
// some logic...
totalCells.push({
lineNumber: 1,
cells: ['a', 'b', 'c']
});
totalCells.push({
lineNumber: 2,
cells: ['x', 'y', 'z']
});
建模二维数组的一种更简单的方法是使用数组数组。 例如
totalCells = [];
totalCells.push(['a','b','c']);
totalCells.push(['d','e','f']);
行号是隐式的,例如,在这种情况下,totalCells [0]是第一行,依此类推。
作为Rory答案的替代方法。 使用物件
var totalCells = {}
然后,您可以直接添加键/属性:
totalCells[1] = ['a','b','c']
totalCells[2] = ['d','e','f']
这样做的好处是您可以将对象用作地图:
totalCells[1]
将返回['a','b','c']
然后,使用u nderscore.js (或lodash),可以执行一些有趣的操作,例如提取键等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.