Object
An object is a collection of properties(key/value pairs). When the value is a function, the property becomes a method.
Objects can be created using the Object()
constructor, Object.create()
or the literal notation.
-
Object()
constructor: TheObject
constructor creates an object wrapper for the given value -new Object(value)
- If the value is
null
orundefined
, it will create and return an empty object.
- If the value is
let obj1 = new Object(null); console.log(obj1); // {} let obj2 = new Object(undefined); console.log(obj2); // {} // let obj = new Object() will do the same
- Otherwise, it will return an object of a Type that corresponds to the given value.
let obj3 = new Object(2); console.log(obj3); // [Number: 2] let obj4 = new Object("hi"); console.log(obj4); // [String: 'hi'] let obj5 = new Object(true); console.log(obj5); // [Boolean: true]
- If the value is an object already, it will return the value.
let obj6 = new Object({ age: 2 }); console.log(obj6); // { age: 2 }
-
Object.create()
TheObject.create()
method creates a new object, using an existing object as the prototype of the newly created object.
const person = { isHuman: false, printIntroduction: function () { console.log(`My name is ${this.name}. Am I human? ${this.isHuman}`); }, }; const me = Object.create(person); me.name = "Matthew"; // "name" is a property set on "me", but not on "person" me.isHuman = true; // inherited properties can be overwritten me.printIntroduction(); // expected output: "My name is Matthew. Am I human? true"
- The literal notation
const object = { a: 1, b: 2, c: 3 };
We can access the values in an object by using object['key']
or object.key
.
const object = { a: 1, b: 2, c: 3 }; console.log(object["a"]); // 1 console.log(object.a); // 1
Deleting a property from an object - delete
operator
The JavaScript delete
operator removes a property from an object.
const Employee = { firstname: "John", lastname: "Doe", }; console.log(Employee.firstname); // expected output: "John" delete Employee.firstname; console.log(Employee.firstname); // expected output: undefined
Top comments (0)