How can I make this work? // JavaScript Document var sampleArray = [1,2,3,4,5]; var double = function(num){ return (num * 2); }; var doubledNum = new Object(); for(var i = 0; i < sampleArray.length; i++){ doubledNum.sampleArray[i] = double(sampleArray[i]); } Code (markup):
Okay so I have found that using numbers cannot be done. So using number notation should look like: console.log(doubledNum.['1']); Code (markup): This should print out the number 2 correct?
Solved: // JavaScript Document var sampleArray = [1,2,3,4,5]; var doubledNum = new Object(); var double = function(num){ return (num * 2); }; for(var i = 0; i < sampleArray.length; i++){ doubledNum[sampleArray[i]] = double(sampleArray[i]); }; console.log (doubledNum); Code (markup):
Nice. If your browser supports Array.forEach, you could shorten that: var numbers = [1, 2, 3, 4, 5]; var doubled = {}; numbers.forEach(function (val, i, arr) { doubled[val] = val * 2; }); Code (markup):