Javascript 选中复选框时,将值存储在数组中并从数组中检索

Javascript 选中复选框时,将值存储在数组中并从数组中检索,javascript,arrays,checkbox,Javascript,Arrays,Checkbox,我正在这样的数组中存储一些值。 var检验=[]; 我将值作为test.push(sample)推送到这个数组中; 我有一些逻辑来计算这个值 var样本=(a/b.长度)*100; 当我点击一个按钮时,上面用于计算sample值的逻辑就完成了,一旦我得到sample值,我就将它推到test[]数组。现在,每当我选中复选框时,我想从test[]数组中检索所有值。我能够做到这一切,但我在这里面临一个问题。仅保存最后一次推送的值。但是我想保存所有被推送的值。谁能帮我解决这个问题 需要快速响应,并受到赞

我正在这样的数组中存储一些值。
var检验=[]; 我将值作为test.push(sample)推送到这个数组中; 我有一些逻辑来计算这个值 var样本=(a/b.长度)*100; 当我点击一个按钮时,上面用于计算sample值的逻辑就完成了,一旦我得到sample值,我就将它推到test[]数组。现在,每当我选中复选框时,我想从test[]数组中检索所有值。我能够做到这一切,但我在这里面临一个问题。仅保存最后一次推送的值。但是我想保存所有被推送的值。谁能帮我解决这个问题

需要快速响应,并受到赞赏
问候

Hema

您需要为此使用二维数组。 使用
var test=newarray()
然后分配值
test['someKey']=sample


test.push(样本)。您可以像
alert(test[0])
那样检索数组值,或者使用
$迭代数组。每个数组(test,function(index,value){alert(value)})

您要做的是创建一个数组,该数组将用作值集列表

然后,您可以将所有更改推送到一个数组中,并将其放入列表中

例如:

var mainList = new Array();

var changeListA = new Array();
var changeListB = new Array();

// do some stuff on change list **a** .. push(something)
changeListA .push(something);
changeListA .push(something);
changeListA .push(something);

// do some stuff on change list **b** .. push(something)
changeListB .push(changeListB);

mainList.push(changeListA);

您的问题对我来说并不十分清楚,但是我至少可以提供一个小的JSFIDLE来向您证明array.push是如何工作的

其他答案表明,您需要的是二维数组,或者是“hashmap”或“associative array”,其中使用键名存储数组值。这里的代码可以在小提琴中使用,以实现或


只有当你共享代码时,人们才能帮助发现其中的问题。所有推送的值都会被保存,这就是数组的工作方式,除非你每次都清除它。所以,除非你们共享代码,否则我们在这里做不了什么。
// First if you need 2 dimensional arrays:
myArray.push( ["Orange", "Apple"] );
myArray.push( ["Mango", "Pineapple"] );

// Secondly, if you need hashmap or associative array:
var myObj = {};
myObj['key'] = 'value';
alert(myObject.key);