JavaScript handler.ownKeys() Method - JavaScript Tutorial

JavaScript handler.ownKeys() Method

BLUF: This tutorial on JavaScript handler.ownKeys() Method provides an in-depth look at JavaScript's core features. It includes practical examples and code snippets to help you master modern JS development.
Key Discovery: JavaScript handler.ownKeys() Method

Understanding JavaScript handler.ownKeys() Method is crucial for building dynamic, interactive web applications. Explore the examples below to see it in action.

The handler.ownKeys function in JavaScript serves to yield an enumerable object. This method acts as a trap for Reflect.ownKeys.

Syntax

Example

ownKeys: function(target)

Parameters

target : The target object.

Return value

Return an enumerable object.

Browser Support

Chrome 49
Edge 12
Firefox 18
Opera 36

Example 1

Example

<script>

var proxy1 = new Proxy({}, {

  ownKeys: function(target) {

   document.writeln(" Use handler.ownKeys() is ");

    return ['a', 'b', 'c'];

  }

});

document.writeln(Object.getOwnPropertyNames(proxy1)); 

//expected output: Use handler.ownKeys() is a,b,c

</script>

Output:

Output

Use handler.ownKeys() is a,b,c

Example 2

Example

<script>

var x = {

 Age:24,

 Count: 45

}

var y = {

  ownKeys (target) {

    return Reflect.ownKeys(target)

  }

}

var z = new Proxy(x,y);

for (let key of Object.keys(z)) 

{

  document.writeln(key);

  // expected output: Age Count

 }

</script>

Output:

Output

Age Count

Example 3

Example

<script>

var x = { foo: 1 };

Object.defineProperty(x, 'variable', { value: 2, 

                                  writable: true,

                                enumerable: false,

                                  configurable: true } );



var proxy = new Proxy(x, {

  ownKeys: function(target, a, b) {

    document.writeln('in ownKeys method');

var names = Object.getOwnPropertyNames(target);

    //Useing Object.getOwnProperty mehod.

    var symbols = Object.getOwnPropertySymbols(target);

    return names.concat(symbols);

  }

});

document.writeln(Object.keys(proxy));

//expected.output: in ownKeys method foo 

document.writeln("<br/>")

document.writeln(Object.getOwnPropertyNames(proxy));

//expected output: in ownKeys method foo,variable

</script>

Output:

Output

in ownKeys method foo 

in ownKeys method foo,variable

Input Required

This code uses input(). Please provide values below:

Logic Practice
Install Logic Practice
Add to home screen for a faster app-like experience