PDA

Просмотр полной версии : Уникальные име переменных в системе


Ryumkin
30.10.2005, 13:08
Скажем я создал переменные

var a = 5;
var b = 10;

у них есть уникальные адреса/имена в системе? Как бы мне их увидеть? Так как я написал - все просто, а если у меня динамические переменные и мне нужно им присваивать уникальные имена как мне поступить? :)
Надеюсь кто-нить поймет что я написал...

iNils
30.10.2005, 13:13
То что ты написал является локальными переменными.
А вопрос твой не понятен.

Ryumkin
30.10.2005, 13:20
Вообщем мне нужна имитация указателей..., чтобы я мог потом вернуться к этой переменной по ее динамическому имени...

да кстати и потом

function a()
{
var a = new String("wfwef");
}

a();

после того как это выполнилось переменная a осталась в памяти?

Iv
30.10.2005, 13:50
делим на подвопросы:
1. как сделать уникальную строку
2. как создать переменную с именем - уникальной строкой
3. как потом с этим жить

Ответы:
1. this.unique_string = "unique_"+new Date.GetTimer() +"_"+ Math.random()
2. this[this.unique_string] = any_value
3. не знаю

- ты попробуй объяснить чего хочешь добиться не жалея букв,
если, конечно у тебя оплата траффика не побуквенная.
и в общем и в частности желательно.

Iv
30.10.2005, 13:54
после того как это выполнилось переменная a осталась в памяти?- нет. хотя иногда не всё просто.
нужно четко представлять себе работу сборщика мусора.
погугли чуток, почитай о принципах работы таких сборщиков.
так вкратце не объяснить, сорри.

Iv
30.10.2005, 14:35
сорри. проблемное место есть:
...+"_"+ Math.random()
там будет точка, которая будет восприниматься не как часть имени,
а как точка, с некрасивыми последствиями.
нужно заменить вот так:
...("_"+ Math.random()).split(".").join("")