Reputation: 987
I am trying to pass an array value into a function as an arg and then use it's value to reference another array. I know that sounds a bit complicated but I am doing it for a reason ;) I THINK that showProject thinks that project1 is a string as it returns only 'p' and ... Any help appreciated?
var projects = ["project1","project2"];
var project1 = ["image1","image2"];
var project2 = ["image1","image2"];
function showProject(arr){
console.log(arr[0]);
}
//why isn't this showing image 1 in project 1 array?
showProject(projects[0]);
Fiddle > http://jsfiddle.net/4ryLT/
Upvotes: 0
Views: 73
Reputation: 3
I think you mean this
var projects = [];
projects["project1"] = ["image1","image2"];
projects["project2"] = ["image1","image2"];
function showProject(arr){
alert(arr[0]);
}
showProject(projects["project1"]);
Upvotes: 0
Reputation: 2910
var projects = ["project1","project2"];
var project1 = ["image1","image2"];
var project2 = ["image1","image2"];
function showProject(arr){
console.log(eval(arr)[0]);
}
showProject(projects[0]);
Upvotes: 0
Reputation: 1818
without change your logic:
var projects = ["project1","project2"];
var project1 = ["image1","image2"];
var project2 = ["image1","image2"];
function showProject(arr){
console.log(eval(arr)[0]);
}
showProject(projects[0]);
byee
Upvotes: -1
Reputation: 74420
This seems to be what you want:
var project1 = ["image1","image2"];
var project2 = ["image1","image2"];
var projects = [project1,project2];
function showProject(arr){
alert(arr[0]);
}
showProject(projects[0]);
Set arrays as elements of projects
array.
Upvotes: 4
Reputation: 2169
is var projects
referring to the other two variables?
If so, remove the ""
and put them in a different order
var project1 = ["image1","image2"];
var project2 = ["image1","image2"];
var projects = [project1,project2];
function showProject(arr){
alert(arr[0]);
}
showProject(projects[0]);
Upvotes: 0