5

I know how to skip first iteration in javascript foreach loop

dataObject.slice(1).forEach((row) => {});

I want to know how to do the same thing using for of loop in javascript, please help me, thanks

for( const row of dataObject )

0

3 Answers 3

4

The same way you're skipping it with forEach - replace the dataObject expression with dataObject.slice(1).

for( const row of dataObject.slice(1) )
Sign up to request clarification or add additional context in comments.

Comments

3

While CertainPerformace's solution is what most people, including me, would go with, it does have a the downside of having to make a temporary array copy, which would be bad when you have huge arrays (but completely unnoticeable usually).

To prevent copying the array, create a temporary variable to check if it's the first in the loop. The downsides of this is the temporary variable, and the if check on every iteration could make it slower.

let first = true;
for (const row of dataObject) {
  if (first) {
    first = false;
    continue;
  }
  // ... rest of script
}

And I would probably just use a traditional incremental for-loop anyways if you want more control over iteration, since forEach, for-of, and for-in are meant to iterate over everything.

Comments

1

If you want to avoid creating a new array (which slice does), then you can also opt for using one of the iterator helper methods that ECMAScript 2025 introduced: drop:

const data = [1, 2, 3, 4, 5];

for (const row of data.values().drop(1)) console.log(row);

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.