How to iterate array of objects [duplicate] - javascript

This question already has answers here:
Object.length undefined in javascript [duplicate]
(3 answers)
JavaScript object literal length === undefined?
(5 answers)
Closed 5 years ago.
Here is my jsfiddle
Here is my array looks like
var arr = [];
arr['alpha'] = {'a':'1','b':'1'};
arr['beta'] = {'a':'2','b':'4'};
console.log(arr)
When i take console.log(arr.length) It says 0. So i can't able to for loop this one
How can i iterate this array ?
Note :
I don't want to use jquery, i prefer only javascript

Related

How can I add an element to a json object in JavaScript? [duplicate]

This question already has answers here:
How to concatenate properties from multiple JavaScript objects
(14 answers)
Closed 6 months ago.
var obj={"student":[{"id":1,"name":"mark"}]}
For example I have this object I want to add another element to it such as this:
var teacher= "teacher":[{"id":1,"name":"Stacy"}]
to make this new object:
var objnew= {"student":[{"id":1,"name":"mark"}], "teacher":[{"id":1,"name":"Stacy"}] }
You can use this code.
var objnew = Object.assign({}, obj, teacher);

JavaScript hash of Arrays [duplicate]

This question already has answers here:
How do I loop through or enumerate a JavaScript object?
(48 answers)
Closed 4 years ago.
I have such type of array
How to access Viena
There could be a lot of cities
[{"Viena":[{"date":"2018-11-10","time":"17:45","price":599,"to_city":"Viena","wday":"saturday"},{..},{..}],{"Paris":[{..}]} ]
You can use Array.filter for this.
var data = [{"Viena":[{"date":"2018-11-10","time":"17:45","price":599,"to_city":"Viena","wday":"saturday"}]},{"Paris":[{"date":"2018-11-10","time":"17:45","price":599,"to_city":"Viena","wday":"saturday"}]}];
var result = data.filter(function(value){return Object.keys(value).indexOf("Viena") != -1;});
console.log(result[0]);

Referencing / Parsing an object [duplicate]

This question already has answers here:
How to iterate over a JavaScript object?
(19 answers)
How to loop through a plain JavaScript object with the objects as members
(28 answers)
How do I loop through or enumerate a JavaScript object?
(48 answers)
Iterate through object properties
(31 answers)
How to iterate (keys, values) in JavaScript? [duplicate]
(11 answers)
Closed 5 years ago.
Very simple question here, I have the following variable. set up in a format like so {item number: quantity, item number, quantity....}
var x = {4214061251:1,2497227651:2,4214140739:2};
My question is simply how do i loop through this properly to access each element.
I would like to be able to access the item numbers and quantities separately, how can I achieve this?
var x = {4214061251:1,2497227651:2,4214140739:2};
// Array of all keys 4214061251, 2497227651 ...
var keysArr = Object.keys(x);
console.log(keysArr);
// Iterate on keys
keysArr.forEach(
(el) => {
// To access keys
console.log("Key: "+el);
// To access values instead
console.log("Value: "+x[el]);
}
)

Mongoose: How to update value in array at index given from variable? [duplicate]

This question already has answers here:
Add a property to a JavaScript object using a variable as the name? [duplicate]
(14 answers)
Closed 5 years ago.
options.votes is an array.
This code works:
Poll.findOneAndUpdate({title},{$inc:{'options.votes.0':1}}
I need to replace 0 for a variable.
This does not work:
const query = 'options.votes.'+variable
Poll.findOneAndUpdate({title},{$inc:{query:1}}
Thanks for help
It's just an object with a string key
var obj = {};
obj['options.votes.'+variable] = 1;
Poll.findOneAndUpdate({title},{$inc:obj})
or with ES2015 and dynamic keys
const query = 'options.votes.'+variable;
Poll.findOneAndUpdate({title},{$inc:{[query]:1}})

How to combine 2 array to an Object? [duplicate]

This question already has answers here:
Merge keys array and values array into an object in JavaScript
(14 answers)
Closed 8 years ago.
I have 2 arrays which are the same length like this:
$scope.access_name = ['group1','group2','group3','group4']
access_value=[1,2,1,3]
How can I combine to have result like this:
object_access = {'group1:1','group2:2','group3:1','group4:3'}
thankyou very much
var object_access={};
for(int i=0;i<access_value.length;i++)
{
object_access[$scope.access_name[i]]=access_value[i];
}

Categories