The static Reflect.get() method works like getting a property from an object (target[propertyKey]) as a function.


Reflect.get(target, propertyKey[, receiver])


The target object on which to get the property.
The name of the property to get.
receiver Optional
The value of this provided for the call to target if a getter is encountered. When used with Proxy, it can be an object that inherits from target.

Return value

The value of the property.


A TypeError, if target is not an Object.


The Reflect.get method allows you to get a property on an object. It is like the property accessor syntax as a function.


Using Reflect.get()

// Object
let obj = { x: 1, y: 2 }
Reflect.get(obj, 'x')  // 1

// Array
Reflect.get(['zero', 'one'], 1)  // "one"

// Proxy with a get handler
let x = {p: 1};

let obj = new Proxy(x, {
  get(t, k, r) { 
    return k + 'bar'
Reflect.get(obj, 'foo')  // "foobar"

//Proxy with get handler and receiver
let x = {p: 1, foo: 2}; 
let y = {foo: 3};

let obj = new Proxy(x, { 
  get(t, prop, receiver) {   
    return receiver[prop] + 'bar'   
Reflect.get(obj, 'foo', y) // "3bar"


ECMAScript (ECMA-262)
The definition of 'Reflect.get' in that specification.

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
getChrome Full support 49Edge Full support 12Firefox Full support 42IE No support NoOpera Full support 36Safari Full support 10WebView Android Full support 49Chrome Android Full support 49Firefox Android Full support 42Opera Android Full support 36Safari iOS Full support 10Samsung Internet Android Full support 5.0nodejs Full support 6.0.0


Full support  
Full support
No support  
No support

See also