Usare Proxy in Javascript

Mattepuffo's logo
Usare Proxy in Javascript

Usare Proxy in Javascript

Proxy è un oggetto Javascript che ci permette di intercettare un altro oggetto per ridefinirne le operazioni / proprietà.

Non so quante volte vi capiterà di usarlo, ma è interessante conoscerlo.

Quindi ne vediamo un esempio partendo da questo:

const target = {
	email: "email@email.it",
	nome: "Mio nome"
};

const handler = {};

const proxy = new Proxy(target, handler);
console.log(proxy.email);
console.log(proxy.nome);

Essendo l'handler vuoto, non ridefiniamo nulla.

const target = {
	email: "email@email.it",
	nome: "Mio nome"
};

const handler = {
	get(target, prop, receiver) {
		return "Mattepuffo";
	}
};

const proxy = new Proxy(target, handler);
console.log(proxy.email);
console.log(proxy.nome);

In questo caso non controlliamo la proprietà di riferimento, e quindi sovrascriviamo entrambi i valori.

Infine:

const target = {
	email: "email@email.it",
	nome: "Mio nome"
};

const handler = {
	get(target, prop, receiver) {
		if (prop === 'nome') {
			return "Mattepuffo";
		}

		return Reflect.get(...arguments);
	}
};

const proxy = new Proxy(target, handler);
console.log(proxy.email);
console.log(proxy.nome);

In questo caso ridefiniamo una proprietà, e con Reflect "prendiamo" gli originali delle altre.

Enjoy!


Condividi

Commentami!