"If a worker wants to do his job well, he must first sharpen his tools." - Confucius, "The Analects of Confucius. Lu Linggong"
Front page > Programming > Mastering Objects in JavaScript

Mastering Objects in JavaScript

Published on 2024-12-22
Browse:925

Mastering Objects in JavaScript

Objects in JavaScript

In JavaScript, objects are collections of key-value pairs where values can be data (properties) or functions (methods). Objects are fundamental to JavaScript, as nearly everything in JavaScript is an object, including arrays, functions, and even other objects.


1. Creating Objects

A. Object Literal

The simplest way to create an object is using curly braces {}.

Example:

const person = {
  name: "Alice",
  age: 25,
  greet: function () {
    console.log("Hello!");
  },
};

console.log(person.name); // Output: Alice
person.greet(); // Output: Hello!

B. Object Constructor

Using the Object constructor creates an empty object.

Example:

const person = new Object();
person.name = "Bob";
person.age = 30;
person.greet = function () {
  console.log("Hi!");
};

console.log(person.name); // Output: Bob
person.greet(); // Output: Hi!

C. Using Object.create()

This method creates a new object with the specified prototype.

Example:

const prototype = { greet: function () { console.log("Hello!"); } };
const person = Object.create(prototype);
person.name = "Charlie";
console.log(person.name); // Output: Charlie
person.greet(); // Output: Hello!

2. Accessing Object Properties

A. Dot Notation

Access properties using a dot (.).

Example:

console.log(person.name); // Output: Alice

B. Bracket Notation

Access properties using square brackets ([]). Useful for dynamic property names.

Example:

console.log(person["name"]); // Output: Alice
const key = "age";
console.log(person[key]); // Output: 25

3. Adding, Modifying, and Deleting Properties

  • Adding:
person.country = "USA";
console.log(person.country); // Output: USA
  • Modifying:
person.age = 26;
console.log(person.age); // Output: 26
  • Deleting:
delete person.age;
console.log(person.age); // Output: undefined

4. Methods in Objects

When a function is a property of an object, it is called a method.

Example:

const car = {
  brand: "Tesla",
  start: function () {
    console.log("Car started!");
  },
};

car.start(); // Output: Car started!

5. Iterating Over Object Properties

A. Using for...in

Iterate over all enumerable properties of an object.

Example:

for (let key in person) {
  console.log(`${key}: ${person[key]}`);
}

B. Using Object.keys()

Returns an array of an object's keys.

Example:

Object.keys(person).forEach((key) => {
  console.log(`${key}: ${person[key]}`);
});

C. Using Object.entries()

Returns an array of [key, value] pairs.

Example:

Object.entries(person).forEach(([key, value]) => {
  console.log(`${key}: ${value}`);
});

6. Object Methods

JavaScript provides several built-in methods to work with objects.

  • Object.assign(): Copies properties from one object to another.
const target = { a: 1 };
const source = { b: 2 };
Object.assign(target, source);
console.log(target); // Output: { a: 1, b: 2 }
  • Object.freeze(): Prevents modification of an object.
const obj = { a: 1 };
Object.freeze(obj);
obj.a = 2; // No effect
console.log(obj.a); // Output: 1
  • Object.seal(): Prevents adding or removing properties but allows modification of existing properties.
const obj = { a: 1 };
Object.seal(obj);
obj.b = 2; // No effect
obj.a = 3; // Works
console.log(obj); // Output: { a: 3 }

7. Prototypes and Inheritance

Objects in JavaScript have a prototype, which is another object from which they inherit properties and methods.

Example:

const animal = { eats: true };
const dog = Object.create(animal);
dog.barks = true;

console.log(dog.eats); // Output: true (inherited)
console.log(dog.barks); // Output: true

8. Object Destructuring

Destructuring allows extracting properties from an object into variables.

Example:

const person = { name: "Alice", age: 25 };
const { name, age } = person;
console.log(name); // Output: Alice
console.log(age); // Output: 25

9. Summary

  • Objects are key-value pairs that can store properties and methods.
  • Use object literals for simple object creation.
  • Access object properties using dot or bracket notation.
  • Use built-in methods like Object.keys(), Object.assign(), and Object.freeze() for effective object manipulation.
  • Mastering objects is crucial for understanding advanced JavaScript concepts like prototypes and inheritance.

Hi, I'm Abhay Singh Kathayat!
I am a full-stack developer with expertise in both front-end and back-end technologies. I work with a variety of programming languages and frameworks to build efficient, scalable, and user-friendly applications.
Feel free to reach out to me at my business email: [email protected].

Release Statement This article is reproduced at: https://dev.to/abhay_yt_52a8e72b213be229/mastering-objects-in-javascript-4p57?1 If there is any infringement, please contact [email protected] to delete it
Latest tutorial More>

Disclaimer: All resources provided are partly from the Internet. If there is any infringement of your copyright or other rights and interests, please explain the detailed reasons and provide proof of copyright or rights and interests and then send it to the email: [email protected] We will handle it for you as soon as possible.

Copyright© 2022 湘ICP备2022001581号-3