Rakesh
Rakesh

Reputation: 329

How to push variables value inside for loop array

How to push variable a1, a2, a3, a4 values inside for loop array.

var a1 = 100, a2 = 400, a3 = 700, a4 = 800;
var arr= [];
for (var i = 1; i <= 4; i++) {
    arr.push("a"+i);
}
alert(arr);

The result is a1,a2,a3,a4 instead of 100,400,700,800.

Upvotes: 0

Views: 1374

Answers (4)

Nina Scholz
Nina Scholz

Reputation: 386670

You could use the window object for accessing global variables.

var a1 = 100,
    a2 = 400,
    a3 = 700,
    a4 = 800;
    arr = [];

for (var i = 1; i <= 4; i++) {
    arr.push(window['a' + i]);
}

document.write('<pre>' + JSON.stringify(arr, 0, 4) + '</pre>');

Upvotes: 1

Daniel Kobe
Daniel Kobe

Reputation: 9825

You can do without eval by using a map store your variables.

var map = { a1: 100, a2: 400, a3: 700, a4: 800 };
var arr = [];

for (var i = 1; i <= 4; i++) {
    arr.push(map["a" + i]);
}
console.log(arr);

Upvotes: 1

dhruv jadia
dhruv jadia

Reputation: 1680

var a1 = 100, a2 = 400, a3 = 700, a4 = 800;
var arr= [];
arr.push(a1,a2,a3,a4);
alert(arr);

Upvotes: 1

Nitin Garg
Nitin Garg

Reputation: 896

Use Eval for the solution of the problem.

 var a1 = 100, a2 = 400, a3 = 700, a4 = 800;
        var arr= [];
        for (var i = 1; i <= 4; i++) {
            arr.push(eval("a"+i));
        }
        alert(arr);

Hope this helps you.

Upvotes: 5

Related Questions