📝 Zmienne i stałe
KitsuneScript oferuje dwa sposoby deklarowania wartości: zmienne (let) i stałe (const).
Zmienne (let)
Słowo kluczowe let tworzy zmienną, której wartość można zmieniać:
let x = 10;
print(x);
x = 20;
print(x);
let name = "Kitsune";
name = "Fox";
Stałe (const)
Słowo kluczowe const tworzy stałą - wartość, której nie można zmienić:
const PI = 3.14159;
print(PI);
const MAX_SIZE = 100;
const APP_NAME = "MyApp";
💡 Konwencja
Stałe zazwyczaj nazywa się WIELKIMI_LITERAMI z podkreślnikami, ale to tylko konwencja - język tego nie wymusza.
Deklaracja bez wartości
Zmienna może być zadeklarowana bez wartości początkowej:
let value;
print(value);
value = 42;
print(value);
Wielokrotna deklaracja
Możesz zadeklarować wiele zmiennych w jednej linii:
let a, b, c = 1, 2, 3;
print(a, b, c);
let x = y = z = 0;
print(x, y, z);
Destructuring
Rozpakowywanie list i map do zmiennych:
let [x, y, z] = [1, 2, 3];
print(x, y, z);
let [a, b, c = 100] = [10, 20];
print(a, b, c);
let config = {host: "localhost", port: 8080};
let {host, port, timeout = 5000} = config;
print(host);
print(port);
print(timeout);
Zakres (scope)
Zmienne są dostępne w bloku, w którym zostały zadeklarowane:
let globalVar = "global";
if (true) {
let blockVar = "block";
print(globalVar);
print(blockVar);
}
print(globalVar);
Nullish Assignment (??=)
Przypisz wartość tylko jeśli zmienna jest null:
let value = null;
value ??= 42;
print(value);
value ??= 100;
print(value);
Logical Assignment
let a = false;
a ||= "default";
print(a);
let b = true;
b &&= "assigned";
print(b);
Compound Assignment
Skrócone operatory przypisania:
let x = 10;
x += 5;
x -= 3;
x *= 2;
x /= 4;
x %= 4;
print(x);
Inkrementacja i dekrementacja
let i = 0;
i++;
++i;
i--;
--i;
print(i);
⚠️ Różnica prefix/postfix
++i najpierw zwiększa, potem zwraca wartość. i++ najpierw zwraca wartość, potem zwiększa. Ma to znaczenie w wyrażeniach!
Podsumowanie
| Słowo kluczowe |
Opis |
Zmienialność |
let |
Zmienna |
✅ Można zmienić |
const |
Stała |
❌ Nie można zmienić |