JasonMHirst
JasonMHirst

Reputation: 576

Return unique keys from JavaScript Array

I'm hoping my question is using the correct terminology...

Can someone explain to me how I can perform the following:

If I have an array consisting of:

Object { id=1498, brandName="Booths", quality="Standard"} Object { id=1499, brandName="Booths", quality="Standard"}

How can I iterate throughout that array and return another array of distinct 'keys'?

Ultimately I want an array which would return something like:

[id,brandName,quality] (but the original array is going to return different keys at different times.

Have I made sense?

Upvotes: 0

Views: 519

Answers (2)

KooiInc
KooiInc

Reputation: 122898

You can use Object.keys:

var a1 = [{ id:1498, brandName:"Booths", quality:"Standard"}, 
          { id:1499, brandName:"Booths", quality:"Standard"}],
    a1Keys = a1.map(function(a){return Object.keys(a);});
//a1Keys now:
[['id','brandName','quality'],['id','brandName','quality']]

The keys method is described @MDN, including a shim for older browsers

Upvotes: 3

Less
Less

Reputation: 116

var a = {"a": 1, "b": "t" };
var keys = new Array();
for(var o in a){
    keys.push(o);
}
console.log(keys)

Upvotes: 0

Related Questions