Reputation: 401
I have a variable in jquery as follows:
var obj = { one: 1, two: 2, three: 3, four: 4, five: 5 };
Is there a way to get value by key WITHOUT iteration.
In my original scenario, the variable "obj" contain lots of entries. And will be called frequently. So looping using $.each will cause performance issue.
If there is another way to declare the above variable, then i can do that also. So if anyone have any other method to get value by key WITHOUT looping, then can you please share.
Thanks in advance.
Upvotes: 2
Views: 14533
Reputation: 146191
You can use
var obj = { one: 1, two: 2, three: 3, four: 4, five: 5 };
console.log(obj.one); // 1
console.log(obj['two']); // 2
Upvotes: 7
Reputation: 56501
Without iteration, then you have to do it directly like
obj.one = 1
obj.two = 2
obj.three = 3
...
Upvotes: 3
Reputation: 388316
You can use the member operator(Dot Notation or Bracket Notation) to do it, there is no need for iteration here
obj.one
will give 1 same as obj.two
will give 2
Ex:
console.log(obj1.one);
console.log(obj1.two);
or if the key is stored in a different variable like var key = 'one'
then obj[key]
will give 1
var key = 'three';
console.log(obj1[key]);
Upvotes: 2