Skip to content


Why Object.getOwnPropertyDescriptor ?

Object.getOwnPropertyDescriptor () returns a property identifier for the specified property of the specified object. This method allows examination of the precise definition of a property. A property in JavaScript consists of a name in the string value or a Symbol and property identifier. More information about property identifier types and attributes can be found in Object.defineProperty ().
Note that this is not a method to call on an object: it is a public function and you must pass it on to an object.


Object.getOwnPropertyDescriptor( obj , name )

  • obj: The object that is to have its property attributes queried.
  • name: The name of the property (or index of the array element) to query.

A property descriptor is an ordinary JavaScript object that describes the attributes of a property. There are two kinds of JavaScript properties. A data property has a value and three attributes: enumerable, writable, and configurable. An accessor property has a getter and/or a setter method as well as enumerable and configurable attributes.

  • value: The value for the property.
  • writable: if true and only if the associated value can be changed.
  • receive: A function that functions as a recipient for the property or that is undefined if a recipient does not.
  • set: By default, undefined. It acts as a tuner for the property.
  • enumerable: If true and only if this property occurs during enumeration of properties on the corresponding object.

JavaScript Object.getOwnPropertyDescriptor() Examples

Example 1

        let obj = {
            website: ""

        let arr = Object.getOwnPropertyDescriptor(obj,"website")




Example 2

        let obj = {
            number: 10
        let arr = Object.getOwnPropertyDescriptor(obj, 'number');



Example 3

        let obj = {
            foo: "true",
            get name() { return "codes" },


configurable: true
enumerable: true
value: “true”
writable: true

Example 4

        let myObject, arr;

        myObject = { get foo() { return 17; } };
        arr = Object.getOwnPropertyDescriptor(myObject, 'foo');



configurable: true
enumerable: true
get: ƒ foo()
set: undefined

Example 5

For this example, you need to know the “object” topics:

javascript object example
<input type="text" id="username" />
    <input type="text" id="password" />
    <button onclick="login();">LOGİN</button>


        function login() {
            var users = {
                "alex": 123,
                "rick": 234,
            let username = document.getElementById("username").value,
                password = document.getElementById("password").value;

            if (users.hasOwnProperty(username) == true) {
                let arr1 = Object.getOwnPropertyDescriptor(users, "alex");
                let arr2 = Object.getOwnPropertyDescriptor(users, "rick");

                if (arr1.value == password) {
                    alert("welcome " + username);
                } else if (arr2.value == password) {
                    alert("welcome " + username);
                }else {
                    alert("You are entering the password incorrectly.")
            } else {
                alet("You are entering the username incorrectly.")



Browser Support

Internet Explorer9
Android webviewyes
Chrome for Androidyes
Edge mobileyes
Firefox for Android4
Opera Android11.5

1 Comment »

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: