• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Javascript Dynamiczne deklarowanie zmiennych

Object Storage Arubacloud
+1 głos
332 wizyt
pytanie zadane 18 września 2021 w JavaScript przez adek236 Nowicjusz (180 p.)

Witam. Czy jest możliwość "dynamicznego" deklarowania zmiennych? Jeżeli tak, to jak się to fachowo nazywa, ewentualnie gdzie o tym poczytać. Nie wiem czy coś pominąłem w nauce czy się zawiesiłem, ale na tym stanąłem. Proszę o jakieś porady. 

A teraz wyjaśnię o co mi chodzi: 

const creature1 = new Card("Boo", 100);
const creature2 = new Card("Emme", 200);

Chciałbym, żeby zmienna creature dodawana podczas działania programu, bo nie wiem ile ich będzie.

Np:

function cardFn(name,x,y) {
const name = new Card(x, y);
}

ALBO

for() {
const creature[i] = new Card(x, y);
}
class Card {
    constructor(name, hp) {
        this.name = name;
        this.hp = hp;
    }
}

Dzięki.

2 odpowiedzi

+2 głosów
odpowiedź 18 września 2021 przez Comandeer Guru (600,390 p.)

Można by to opędzić jakimiś megahackami (np. eval), ale nie ma to sensu.

To, czego w rzeczywistości chcesz, to tablica:

const creatures = [
    new Card("Boo", 100),
    new Card("Emme", 200)
];

Każdy element tablicy można potraktować jako taką dynamiczną zmienną.

1
komentarz 18 września 2021 przez adek236 Nowicjusz (180 p.)
Przez chwile o tym myślałem, nie wiem czemu nie podążyłem za tym. Dzięki.
0 głosów
odpowiedź 18 września 2021 przez reskilledio Początkujący (370 p.)

Tak jak powyżej, tablica jest rozwiązaniem.
Można również stworzyć funkcję osobną do generowania zmiennych i tam dodefiniować co ma się dziać:
 

const generateVariables = () => {
  let variables = []

  for (var i = 0; i <= 20; ++i) {
      variables[i] = 'zawartosc zmiennej'
  }

  return variables
}

albo użycie eval: 

eval("creature" + 1 + "='some value'")

 

Podobne pytania

0 głosów
1 odpowiedź 201 wizyt
pytanie zadane 16 stycznia 2023 w C i C++ przez polandonion Mądrala (6,970 p.)
+1 głos
1 odpowiedź 154 wizyt
pytanie zadane 13 kwietnia 2022 w C i C++ przez Szanti 2.0 Nowicjusz (150 p.)
0 głosów
2 odpowiedzi 222 wizyt
pytanie zadane 8 marca 2022 w C i C++ przez Daaa22 Dyskutant (8,250 p.)

92,536 zapytań

141,377 odpowiedzi

319,452 komentarzy

61,920 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...