Search notes:

Javascript: Object object

Methods and properties

assign()
create()
defineProperties()
defineProperty()
entries()
freeze() A frozen object cannot be changed anymore. Compare with isFrozen()
fromEntries()
getOwnPropertyDescriptor()
getOwnPropertyDescriptors()
getOwnPropertyNames()
getOwnPropertySymbols()
getPrototypeOf() The standard way to access an object's prototype. The deprecated and not standard property that stores the object's prototype is __proto__. Compare with Reflect.getPrototypeOf().
hasOwn() Experimental
is()
isExtensible()
isFrozen() Compare with freeze()
isSealed()
keys()
preventExtensions()
prototype.__defineGetter__() Deprecated
prototype.__defineSetter__() Deprecated
prototype.__lookupGetter__() Deprecated
prototype.__lookupSetter__() Deprecated
prototype.__proto__ Deprecated in favor of getPrototypeOf() and setPrototypeOf().
prototype.constructor Returns a reference to the Function object that created the instance object.
prototype.hasOwnProperty()
prototype.isPrototypeOf()
prototype.propertyIsEnumerable()
prototype.toLocaleString()
prototype.toSource() Non-Standard, Deprecated
prototype.toString()
prototype.valueOf()
seal()
setPrototypeOf()
values()

create

<!DOCTYPE html>
<html>
<head>
  <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
  <title>Object.create</title>

  <script type="text/javascript">
    
    function main() {
       var out = document.getElementById('out');

       var a = { func: function () { out.innerHTML += 'a.func<br>'; }};
       var b = { func: function () { out.innerHTML += 'b.func<br>'; }};

       
       var obj_a = Object.create(a);
       var obj_b = Object.create(b);
       var obj_c = Object.create(null);

       obj_a.func(); // a.func
       obj_b.func(); // b.func
//     obj_c.func(); // Error: obj_c.func is not a function
         
       var obj_d = Object.create({}, {num_ro: {value: 42}, num_w: {value: 42, writable: true}}); 
       
       out.innerHTML += obj_d.num_ro + '<br>';  // 42
       out.innerHTML += obj_d.num_w  + '<br>';  // 42

       obj_d.num_ro = 100;  // won't change 42...
       obj_d.num_w  = 100;  // Changes value

       out.innerHTML += obj_d.num_ro + '<br>';  // 42   (!)
       out.innerHTML += obj_d.num_w  + '<br>';  // 100

    }

  </script>

</head>
<body onload='main()';>

  <div id='out'>
  </div>

</body>
</html>

Github repository about-javascript, path: /objects/Object/create.html

getOwnPropertyNames

<!DOCTYPE html>
<html>
<head>
  <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
  <title>getOwnPropertyName</title>

  <script type="text/javascript">
    
    function main() {

      var obj = {foo: 42, bar: 0};

      Object.getOwnPropertyNames(obj).sort().map(function(p) {
        document.getElementById('out').innerHTML += p + "<br>"; // Own property names are: «foo» and «bar»
      });

    }

  </script>

</head>
<body onload='main()';>

  <div id='out'>
  </div>

</body>
</html>
Github repository about-javascript, path: /objects/Object/getOwnPropertyNames.html

__noSuchMethod__

<!DOCTYPE html>
<html>
<head>
  <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
  <title>__noSuchMethod__</title>

  <script type="text/javascript">
    
    function main() {

      var out = document.getElementById('out');

      var obj = {};

      obj.__noSuchMethod__ = function(func_name, func_args) {
        out.innerHTML += 'Inexistent function <b>' + func_name + '</b> was called with <i>' + func_args.join(',') + '</i><br>';
      }

      obj.bar = function (func_args) {
        out.innerHTML += '<b>bar</b> was called with <i>' + func_args + '</i><br>';
      }

      obj.foo(1, 2, 3);                 // Inexistent function foo was called with 1,2,3
      obj.bar('one', 'two', 'three');   // bar was called with one
      obj.baz('baz');                   // Inexistent function baz was called with baz
        
    }

      

  </script>

</head>
<body onload='main()';>

  <div id='out'>
  </div>

</body>
</html>

Github repository about-javascript, path: /objects/Object/__noSuchMethod__.html

See also

objects

Index