Я новичок в ассоциативных массивах, и у меня есть этот код ниже. Я хотел бы присвоить значения для prop
и sumprop[prop]
новому массиву prop1
и prop2
. Цените некоторую помощь здесь.Назначение значений новому массиву
var name = new Array();
var amount = new Array();
name[0]="Peter";
amount[0]="50";
name[1]="John";
amount[1]="10";
name[2]="John";
amount[2]="20";
name[3]="Peter";
amount[3]="20";
name[4]="Mary";
amount[4]="40";
var sum = {};
var i;
var prop1 = new Array();
var prop2 = new Array();
for (i = 0; i < amount.length; i++) {
var name = name[i];
var oldSum = sum[name];
if (typeof oldSum === 'undefined') {
oldSum = 0;
}
sum[name] = oldSum + amount[i];
}
for (var prop in sum) {
if (sum.hasOwnProperty(prop)) {
console.log(prop + " " sum[prop]);
// assign to a new array
}
}
Я хотел prop1 быть заполнены значениями реквизита. И prop2 заполняется значениями sum [prop]. Как распечатать значение для prop1? – user1033038
@ user1033038 Как вы их распечатываете? – 0x499602D2
Я попробовал распечатать их с помощью response.write (prop1), и это отлично работает. Однако, когда я попытался напечатать response.write (prop2), он дал мне ошибку «[Ljava.lang.Object; @ 280add8d» – user1033038