Я хочу иметь возможность создавать и неизвестное количество объектов. Я не уверен, что есть лучший способ управлять ими и ссылаться на них.
Позволяет использовать стандартный пример ООП ... скажем, каждый раз, когда пользователь вводит имя питомца в текстовое поле и нажимает кнопку, новый объект питомца создается с помощью функции petFactory.
function pet(name)
{
this.name= name;
}
function petFactory(textFieldInput)
{
var x = new pet(textFieldInput)
}
Поскольку, как я знаю, нет способа (кроме функции eval) динамически использовать новое уникальное имя переменной для питомца при каждом вызове petFactory, x переназначается новому объекту, а последний питомец теряется , То, что я делал, это помещал объект pet в массив, как только он был инициализирован.
petArray.push(this);
Поэтому, если бы я хотел питомца с именем 'mrFuzzyButtoms', я мог бы перебирать индексированный массив, пока не нашел объект с переменной экземпляра 'mrFuzzyButtoms'
for (n in petArray)
{
if (petarray[n].name == 'mrFuzzyBottoms')
{
// Kill mrFuzzyBottoms
}
}
или я мог бы использовать ассоциативный массив ... как угодно ... но массив - единственный метод, который я знаю для этого. Помимо использования функции eval для создания уникальных имен переменных из строк, но в некоторых языках отсутствует функция eval (actionscript3), и тогда возникает угроза безопасности.
Есть ли лучший способ сделать это?
Редактировать :
Сейчас я работаю в Python, JavaScript и ActionScript.