Sobes.tech
Junior — Middle

Môžete vysvetliť, čo je trieda Reflect v JavaScripte a na čo slúži?

sobes.tech AI

Odpoveď od AI

Otázka sa týka JavaScriptu, ale uvedený modul je Golang — odpoviem v JavaScripte.

Reflect je vstavaný objekt v JavaScripte, ktorý poskytuje metódy na zachytávanie a správu operácií s objektmi, ako je získavanie a nastavovanie vlastností, volanie funkcií, vytváranie objektov atď. Slúži ako súbor utilít pre metaprogramovanie.

Hlavným cieľom Reflect je poskytnúť funkcionalitu podobnú vnútorným metódam objektov, ale vo forme bežných funkcií, čo uľahčuje prácu s proxy a dynamickými operáciami.

Príklad použitia:

const obj = {a: 1};

// Získanie vlastnosti
console.log(Reflect.get(obj, 'a')); // 1

// Nastavenie vlastnosti
Reflect.set(obj, 'b', 2);
console.log(obj.b); // 2

// Kontrola, či vlastnosť existuje
console.log(Reflect.has(obj, 'a')); // true

// Volanie funkcie
function sum(x, y) { return x + y; }
console.log(Reflect.apply(sum, null, [1, 2])); // 3

Týmto spôsobom Reflect pomáha pri jasnejšej a bezpečnejšej správe objektov a ich správania.