Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Создание свойств для элементов массивов. (http://www.flasher.ru/forum/showthread.php?t=81793)

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

точно нигде не остались изначальные двойки?


Часовой пояс GMT +4, время: 01:36.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.