二维对象/将数组关联到三维对象Javascript中
Two Dimensional Object / Associate Array into Three Dimensional Object Javascript
无论如何可以形成这个
吗var stateDat = {
ME: ['Maine',1328361],
etc.
};
对此
var stateDatHistory = {
1:[
ME: ['Maine',1328361],
etc.
],
2:[
ME: ['Maine',1328361],
etc.
],
etc
};
在函数中动态?例如,这不起作用...
turn = 1;
function start(){
stateDatHistory[turn].push(stateDat);
stateDat['ME'][1]= stateDat['ME'][1] - 500; //changing population
turn++;
}
它的历史部分可以是对象数组。 所以。。。
var stateDatHistory = [
{ ME: ['Maine', 1328361] }
];
或者,如果您需要通过键引用历史记录中的每个"步骤",它可能是一个具有包含对象的数组值的对象......
var stateDatHistory = {
1: [
{ ME: ['Maine', 12334] }
]
}
在后一种情况下,"开始"代码将类似于...
turn = 1
function start() {
if (typeof stateDatHistory[turn] === 'undefined') {
stateDatHistory[turn] = [];
}
stateDatHistory[turn].push(stateDat);
stateDat['ME'][1]= stateDat['ME'][1] - 500; //changing population
turn++;
}
说了这么多,我倾向于提到使用对象来包含所有这些状态数据将是一个不错的决定。 例如考虑...
// Define our manager
var stateDatManager = function() { };
(function(instance) {
instance.init = function() {
// Setup internal state
this.history = {};
this.turn = 0;
this.initialized = true;
};
instance.start = function(turn, data) {
if (!this.initialized) { this.init(); }
this.turn = turn;
this.addToHistory(data);
};
instance.addToHistory(data) {
if (typeof this.history[this.turn] === 'undefined') {
this.history[this.turn] = [];
}
this.history[this.turn].push(data);
};
instance.advanceTurn() {
this.turn += 1;
};
}(stateDatManager.prototype));
// Use it
var manager = new stateDatManager();
manager.start(1, [
{ ME: ['Maine', 1328361] }
]);
// Move to the next turn...
manager.advanceTurn();
// etc.
相关文章:
- JavaScript JSON关联对象键和值都作为日期时间戳
- 我应该如何循环通过和“;关联对象“;在javascript中
- 在主要的JavaScript引擎中,在JavaScript关联数组(动态对象属性)中检索/插入的复杂性是多少
- 创建具有关联 dom 元素的 javascript 对象的首选方法是什么
- Javascript:使用value属性对关联数组进行排序,而不转换为对象数组
- javascript字符串到关联对象
- 如何在不选择模式配置参数的情况下,使用mongoose在MongoDB模式实例化中的关联数组/对象中执行foreach
- Javascript:将对象列表转换为关联数组
- Javascript:返回与对象相关的信息的关联数组
- 删除对象/关联数组
- 将 Firebase 对象与当前范围解除关联
- 如何使用 KnockoutJS 创建对象的关联数组
- AngularJS:如何在指令范围的对象发生变化时更新与控制器作用域相关联的控制器作用域
- 对象/关联数组拼接函数
- 将泛型函数动态关联到对象属性时的作用域.(模块模式)
- 如何包含对象/关联数组到对象(js)
- Javascript对象关联
- 如何将JavaScript中的对象关联到HTML元素
- Angular JS:如何在$scope中获取与对象关联的元素坐标
- IndexedDB:检索与对象存储中特定对象关联的行外键