Bird
Raised Fist0
Javascriptprogramming~5 mins

Object entries in Javascript

Choose your learning style10 modes available
Introduction

Object entries help you see all the keys and values inside an object as pairs. This makes it easy to work with each part separately.

When you want to loop through all keys and values of an object.
When you need to convert an object into a list of pairs for easier processing.
When you want to filter or transform object data based on keys or values.
When you want to check or find specific key-value pairs inside an object.
Syntax
Javascript
const entriesArray = Object.entries(objectName);

This returns an array where each item is a two-element array: [key, value].

The keys are always strings, and values can be any type.

Examples
Shows a simple object with two keys. The output is an array of pairs.
Javascript
const user = { name: 'Alice', age: 25 };
const entries = Object.entries(user);
console.log(entries);
When the object is empty, the result is an empty array.
Javascript
const emptyObject = {};
console.log(Object.entries(emptyObject));
With one key-value pair, the result is an array with one pair inside.
Javascript
const singleEntry = { city: 'Paris' };
console.log(Object.entries(singleEntry));
Values can be different types like numbers, booleans, or null.
Javascript
const mixedTypes = { id: 101, active: true, data: null };
console.log(Object.entries(mixedTypes));
Sample Program

This program shows an object with product details. It prints the object, then prints the entries array, and finally loops through each key-value pair to print them separately.

Javascript
const product = {
  name: 'Laptop',
  price: 1200,
  inStock: true
};

console.log('Before using Object.entries:');
console.log(product);

const productEntries = Object.entries(product);

console.log('\nAfter using Object.entries:');
console.log(productEntries);

// Loop through entries and print key and value
for (const [key, value] of productEntries) {
  console.log(`Key: ${key}, Value: ${value}`);
}
OutputSuccess
Important Notes

Time complexity is O(n) where n is the number of keys, because it reads all keys and values.

Space complexity is also O(n) because it creates a new array with all entries.

A common mistake is to expect Object.entries to return an object, but it returns an array of arrays.

Use Object.entries when you want to work with keys and values together, especially for loops or transformations.

Summary

Object.entries converts an object into an array of [key, value] pairs.

This helps you loop through or manipulate object data easily.

Remember it returns an array, not an object.

Practice

(1/5)
1. What does Object.entries(obj) return when used on an object obj?
easy
A. A new object with the same keys and values
B. An array of values only
C. An array of keys only
D. An array of [key, value] pairs from the object

Solution

  1. Step 1: Understand Object.entries behavior

    Object.entries takes an object and returns an array where each element is a two-item array: the key and its corresponding value.
  2. Step 2: Compare options to definition

    Only An array of [key, value] pairs from the object correctly describes this output as an array of [key, value] pairs. Options A, C, and D describe different outputs.
  3. Final Answer:

    An array of [key, value] pairs from the object -> Option D
  4. Quick Check:

    Object.entries = array of [key, value] pairs [OK]
Hint: Remember: entries give key-value pairs as arrays [OK]
Common Mistakes:
  • Thinking it returns an object
  • Confusing entries with keys or values only
  • Expecting a flat array instead of pairs
2. Which of the following is the correct syntax to get entries from an object data?
easy
A. entries(Object.data)
B. Object.entries(data)
C. Object.entry(data)
D. data.entries()

Solution

  1. Step 1: Recall the correct method name and usage

    The correct method is Object.entries() called with the object as argument.
  2. Step 2: Check each option

    Object.entries(data) uses the correct syntax. data.entries() is invalid because objects don't have an entries() method. Object.entry(data) uses a wrong method name. entries(Object.data) has incorrect syntax.
  3. Final Answer:

    Object.entries(data) -> Option B
  4. Quick Check:

    Correct method is Object.entries(obj) [OK]
Hint: Use Object.entries(obj), not obj.entries() [OK]
Common Mistakes:
  • Calling entries as a method on the object
  • Misspelling 'entries' as 'entry'
  • Passing object incorrectly
3. What is the output of this code?
const obj = {a: 1, b: 2};
console.log(Object.entries(obj));
medium
A. ['a', 'b']
B. [['1', 'a'], ['2', 'b']]
C. [['a', 1], ['b', 2]]
D. [1, 2]

Solution

  1. Step 1: Apply Object.entries to the object

    Object.entries returns an array of arrays, each inner array has the key and value from the object.
  2. Step 2: Match output to options

    For obj = {a:1, b:2}, output is [['a', 1], ['b', 2]] which matches [['a', 1], ['b', 2]] exactly.
  3. Final Answer:

    [['a', 1], ['b', 2]] -> Option C
  4. Quick Check:

    Object.entries(obj) = [['a', 1], ['b', 2]] [OK]
Hint: Entries output is array of [key, value] pairs [OK]
Common Mistakes:
  • Swapping keys and values
  • Expecting a flat array of keys or values
  • Confusing output format with JSON string
4. Find the error in this code snippet:
const user = {name: 'Alice', age: 25};
for (const [key, value] of user.entries()) {
  console.log(key, value);
}
medium
A. user.entries() is not a function
B. Missing curly braces in for loop
C. Destructuring syntax is incorrect
D. Console.log syntax error

Solution

  1. Step 1: Identify method usage on object

    Plain objects do not have an entries() method; Object.entries() is a static method on Object.
  2. Step 2: Correct usage

    To iterate entries, use for (const [key, value] of Object.entries(user)) instead of user.entries().
  3. Final Answer:

    user.entries() is not a function -> Option A
  4. Quick Check:

    Objects lack entries() method; use Object.entries(obj) [OK]
Hint: Use Object.entries(obj), not obj.entries() [OK]
Common Mistakes:
  • Calling entries() directly on object
  • Confusing Object.entries with instance method
  • Ignoring error message about missing function
5. Given const data = {x: 10, y: 0, z: null, w: 'hello'}, which code snippet correctly creates a new object with only entries having truthy values?
hard
A. Object.fromEntries(Object.entries(data).filter(([k, v]) => v))
B. Object.entries(data).filter(([k, v]) => v)
C. Object.entries(data).map(([k, v]) => v && [k, v])
D. Object.fromEntries(data.filter(([k, v]) => v))

Solution

  1. Step 1: Filter entries with truthy values

    Use Object.entries(data) to get pairs, then filter pairs where value is truthy (non-zero, non-null, non-false).
  2. Step 2: Convert filtered entries back to object

    Use Object.fromEntries() on filtered array to create new object with only truthy values.
  3. Final Answer:

    Object.fromEntries(Object.entries(data).filter(([k, v]) => v)) -> Option A
  4. Quick Check:

    Filter entries then fromEntries to object [OK]
Hint: Filter entries then use Object.fromEntries to rebuild object [OK]
Common Mistakes:
  • Forgetting to convert back to object
  • Using map instead of filter
  • Trying to call filter on object directly
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard