PDA

Просмотр полной версии : Создание свойств для элементов массивов.


Alex T
27.06.2006, 18:32
var arr1:Array=[2,2,2,2,2];
for(var i=0;i<=arr1.length-1;i++) {
arr1[i].score=i;
trace(currentWinIcons[i].score);
}

Выводит: undefined 5 раз

Как правильно задать свойство для элементов массивов? и можно ли это вообще сделать?

всем спасибо заранее...

Alex T
27.06.2006, 18:34
поспешил людей насмешил, извиняюсь, есть ошибка в коде:
var arr1:Array=[2,2,2,2,2];
for(var i=0;i<=arr1.length-1;i++) {
arr1[i].score=i;
trace(arr1[i].score);
}

etc
27.06.2006, 18:49
И?
Ты хочешь простому типу Number создать свойство? Этого сделать нельзя.

Alex T
27.06.2006, 18:56
класс Number есть, есть конструктор, т.е. можно создавать объекты и для этих объектов можно создать новые свойства...

да?

Samodelkin
27.06.2006, 18:57
var arr1:Array = [2, 2, 2, 2, 2];
for (var i = 0; i<=arr1.length-1; i++) {
arr1[i] = new Array();
arr1[i].score = i;
trace(arr1[i].score);
}

Double
27.06.2006, 19:35
Самоделкин, а как ты изначальные двойки теперь подцепишь? :)
Alex_T, а чего бы не сделать сразу элементом массива объект?

Samodelkin
27.06.2006, 19:50
:-) я тоже за объект
var arr1:Array = [2, 2, 2, 2, 2];
for (var i = 0; i<=arr1.length-1; i++) {
temp=arr1[i];
arr1[i] = new Array();
arr1[i].i=temp;
arr1[i].score = i;
trace(arr1[i].score);
trace(arr1[i].i);
}

Double
27.06.2006, 20:04
или так
var arr1:Array = [{val: 2}, {val: 2}, {val: 2}, {val: 2}, {val: 2}];
for (var i = 0; i<=arr1.length-1; i++) {
arr1[i].score = i;
trace(arr1[i].val+" "+arr1[i].score)
}

__i
27.06.2006, 20:32
или так

var arr1:Array = [2, 2, 2, 2, 2];
for (var i = 0; i<arr1.length; i++) {
arr1[i] ={val:arr1[i] , score:i};
trace(arr1[i].score);
}

Double
27.06.2006, 20:38
точно нигде не остались изначальные двойки?