Loop Over Array in Javascript [duplicate]

I’m trying to loop over the MoveParts in javascript like this:

for (var movePart in moveResult.MoveParts) {
    console.log(movePart.From);
};

I always get undefined instead of the actual value.

Don’t use for-in to loop through arrays, that’s not what it’s for. for-in is for looping through object properties. This answer shows various ways to loop through arrays.

The reason your for-in didn’t work is that movePart is the key, not the actual entry, so if you were using an object (not an array!) you would have used moveResult.MoveParts[movePart].From.

Your forEach version only failed because:

  1. It’s forEach, not foreach. Capitalization matters in JavaScript.

  2. You were missing the closing ) on the function call.

The answer linked above has full examples of forEach and others, but here’s how yours should have looked:

    moveResult.MoveParts.forEach(function (movePart) {
    // Capital E -----------^
        console.log(movePart.From);
    });
//   ^---- closing )

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)