JavaScript handler.get() method in JavaScript is a trap for getting a property value.
Syntax:
const p = new Proxy(target, { get: function(target, property, receiver) { } });
Parameters: This method accepts three parameters as mentioned above and described below:
- Target: This parameter holds the target object.
- Property: This parameter holds the name of the property which is to be get.
- Receiver: This parameter holds the proxy or an object that inherits from the proxy.
Return value: This method returns any value.
Below examples illustrate the handler.get() method in JavaScript:
Example 1: In this example, we will set a trap to get the value of the object using the handler.get() method in JavaScript.
const monster1 = { string: 'Geeksforgeeks' ,
num: 334
}; const handler1 = { get: function (target, prop, receiver) {
if (prop === 'string' ) {
return `${target.string.substr(0, 8)} ... Best portal!`;
} else {
return Reflect.get(...arguments);
}
}
}; const proxy1 = new Proxy(monster1, handler1);
console.log(proxy1.num); console.log(proxy1.string); console.log(proxy1.numstring); const obj = new Proxy({}, {
get: function (target, property, receiver) {
console.log( 'Property : ' + property);
return 56.56;
}
}); console.log(obj.value); |
Output:
334 "Geeksfor ... Best portal!" undefined "Property : value" 56.56
Example 2: In this example, we will set a trap to get the value of the object using the handler.get() method in JavaScript.
const obj = {}; Object.defineProperty(obj, 'a' , {
configurable: false ,
enumerable: false ,
value: 10,
writable: false
}); const p = new Proxy(obj, {
get: function (target, property) {
return 10;
}
}); console.log(p.a); let datalist = { "vala" : 32, "valb" : 7
} let get = new Proxy(
datalist, {
get: function (y, idx) {
return y[idx] * 11
}
} ) for (let z in get) {
console.log(z + " : " + get[z])
} |
Output:
10 "vala : 352" "valb : 77"
Supported Browsers: The browsers supported by handler.get() method are listed below:
- Google Chrome 49 and above
- Edge 12 and above
- Firefox 18 and above
- Opera 36 and above
- Safari 10 and above
We have a complete list of Javascript Proxy/handler methods, to check those go through the Javascript Proxy/handler Reference article.