vincent
vincent

Reputation: 1313

Making comparisson to items in an Object

I have the following object:

 var users:Object= new Object();
 users[0]["user_id"] = "1124";
 users[0]["name"] = "ikke";
 users[0]["age"] = "24";
 users[0]["gender"] = "male";

 users[1]["user_id"] = "1318";
 users[1]["name"] = "test";
 users[1]["age"] = "20";
 users[1]["gender"] = "male";

 var selectors:Object = new Object();
 selectors["user_id"] = 1318;
 selectors["gender"] = "male"; 

what i want is to use the selectors object in an if statement. In humans lanuguage it should be something like:

for (var index:String in users) {
    If users[index]["gender"] == selectors[gender] && users[index]["user_id"] == "male" -> then trace "success".
}

The tricky part is that the selectors object is dynamic. Sometimes it can contain only 1 item , sometimes 3 items. Or it can also be null. In that case it should allways trace success. Anyone that can help me?

Upvotes: 0

Views: 32

Answers (1)

meetamit
meetamit

Reputation: 25157

for(var i:int = 0; i < users.length; i++) {
    var success:Boolean = true;

    for(var key:String in selectors) {
        if(users[i][key] != selectors[key]) {
             success = false;
             break;
        }
    }

    if(success) {
        trace('success for user ' + i);
    }
}

Upvotes: 1

Related Questions