什么是存储和加载数据Javascript的最简单方法?

时间:2015-09-01 12:06:33

标签: javascript html5 hashmap

我有一个用于存储响度值的Hashmap。代码在Javascript HTML5中。

var Loudness = {};
Loudness['f125'] = {right: [], left: []};
Loudness['f125']['right'].push([0,10,30, 40]);
Loudness['f125']['left'].push([5,15,35,45]);
Loudness['f250'] = {right: [], left:[] };
Loudness['f500'] = {right: [], left: []};
Loudness['f1000'] = {right: [], left: []};

我还有一个用于存储增益值的Hashmap(基本上与up相同,也是w /"右"和"左"(音频扬声器的右侧和左侧)属性。
 区别在于HM的名称和数组的值。我有很多频率(键,例如f250,f500,......)仍然要插入每个Hashmap。是否有更有效的方式来声明每个频率键及其属性?  在Hashmap中使用Hashmap是否有意义?  此外,如果将增益HM放入Loudness HM中,那么新的Loudness HM配置会如何?键(频率)是否保持不变? GainHashmap现在是一个新属性吗?  我还没有找到如何实现它。语法是什么样的?
 什么是插入和轻松更改数据的最简单方法("响度""增益""右""左" ,对于每个频率) 你认为有更好的选择吗? WebStorageAPI,Hashmap里面的Hashmap?
 请注意,我不是编程方面的专家。任何帮助都会得到极大的赞赏。

1 个答案:

答案 0 :(得分:0)

var Loudness = {};
    var freqs = ['f125', 'f250', 'f500', 'f1000', 'f1250'];
    var values = [0, 10, 30, 40, 5, 15, 35, 45];
    for(var i in freqs){
        Loudness[freqs[i]] = {left : [], right : []};
        Loudness[freqs[i]].Gain = {left : [], right : []};
        for(var j in values){
            var v = values[j];
            if(v === 0 || v % 2 === 0){
                Loudness[freqs[i]]['right'].push(v);
                Loudness[freqs[i]].Gain['right'].push(v); 
            } else {
                Loudness[freqs[i]]['left'].push(v);
                Loudness[freqs[i]].Gain['left'].push(v); 
        }
    }
}

试试这个。为了获得收益:

Loudness['f125'].Gain.left[0]

基本上,如果您需要更多频率,只需将它们添加到freqs数组。