Просмотр полной версии : Создание свойств для элементов массивов.
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 раз
Как правильно задать свойство для элементов массивов? и можно ли это вообще сделать?
всем спасибо заранее...
поспешил людей насмешил, извиняюсь, есть ошибка в коде:
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);
}
И?
Ты хочешь простому типу Number создать свойство? Этого сделать нельзя.
класс 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);
}
Самоделкин, а как ты изначальные двойки теперь подцепишь? :)
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);
}
или так
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)
}
или так
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);
}
точно нигде не остались изначальные двойки?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.