Reputation: 14288
I am trying to display a multi-dimensional array in javascript. Could someone help me about my code? Thanks.
for (var i=0;i<array.length;i++){
for (var a=0;a<array[i].length;a++){
//document.write(array[0][0]) //this will have output
document.write(array[i][a]) //this won't.
}
}
updated:
my array
The array was created from php then use json_encode to parse to JS.
Array
(
[0] => SimpleXMLElement Object
(
[0] => In UK, HTC Defeats Apple's "Obvious" Slide Unlock Patent
)
[1] => SimpleXMLElement Object
(
[0] => timothy
)
[2] => SimpleXMLElement Object
(
)
[3] => SimpleXMLElement Object
(
[0] => 2012-07-05T14:10:00+00:00
)
[4] => SimpleXMLElement Object
(
[0] => WikiLeaks Begins Release of 2.5m Syrian Emails
)
[5] => SimpleXMLElement Object
(
[0] => timothy
)
[6] => SimpleXMLElement Object
(
)
[7] => SimpleXMLElement Object
(
[0] => 2012-07-05T13:29:00+00:00
)
[8] => SimpleXMLElement Object
(
[0] => A Critical Examination of Bill Gates' Philanthropic Record
)
[9] => SimpleXMLElement Object
(
[0] => samzenpus
)
[10] => SimpleXMLElement Object
(
)
[11] => SimpleXMLElement Object
(
[0] => 2012-07-05T12:07:00+00:00
)
[12] => SimpleXMLElement Object
(
[0] => Ask Slashdot: How Does Your Company Evaluate Your Performance?
)
[13] => SimpleXMLElement Object
(
[0] => samzenpus
)
[14] => SimpleXMLElement Object
(
)
[15] => SimpleXMLElement Object
(
[0] => 2012-07-05T08:52:00+00:00
)
[16] => SimpleXMLElement Object
(
[0] => UAV Cameras an Eye In the Sky For Adventurous Filmmakers
)
[17] => SimpleXMLElement Object
(
[0] => samzenpus
)
[18] => SimpleXMLElement Object
(
)
[19] => SimpleXMLElement Object
(
[0] => 2012-07-05T05:55:00+00:00
)
[20] => SimpleXMLElement Object
(
[0] => Copyrights To Reach Deep Space
)
[21] => SimpleXMLElement Object
(
[0] => samzenpus
)
[22] => SimpleXMLElement Object
(
)
[23] => SimpleXMLElement Object
(
[0] => 2012-07-05T02:46:00+00:00
)
[24] => SimpleXMLElement Object
(
[0] => FDA Approves HIV Home-Use Test Kit
)
[25] => SimpleXMLElement Object
(
[0] => samzenpus
)
[26] => SimpleXMLElement Object
(
)
[27] => SimpleXMLElement Object
(
[0] => 2012-07-05T00:13:00+00:00
)
[28] => SimpleXMLElement Object
(
[0] => Texas Scientists Regret Loss of Higgs Boson Quest
)
[29] => SimpleXMLElement Object
(
[0] => samzenpus
)
[30] => SimpleXMLElement Object
(
)
[31] => SimpleXMLElement Object
(
[0] => 2012-07-04T23:25:00+00:00
)
[32] => SimpleXMLElement Object
(
[0] => Icelandic MP Claims US Vendetta Against WikiLeaks
)
[33] => SimpleXMLElement Object
(
[0] => Soulskill
)
[34] => SimpleXMLElement Object
(
)
[35] => SimpleXMLElement Object
(
[0] => 2012-07-04T22:38:00+00:00
)
[36] => SimpleXMLElement Object
(
[0] => Microsoft's 'Cannibalistic Culture'
)
[37] => SimpleXMLElement Object
(
[0] => Soulskill
)
[38] => SimpleXMLElement Object
(
)
[39] => SimpleXMLElement Object
(
[0] => 2012-07-04T21:50:00+00:00
)
[40] => SimpleXMLElement Object
(
[0] => Android 4.1 Jelly Bean Review
)
[41] => SimpleXMLElement Object
(
[0] => Soulskill
)
[42] => SimpleXMLElement Object
(
)
[43] => SimpleXMLElement Object
(
[0] => 2012-07-04T21:04:00+00:00
)
[44] => SimpleXMLElement Object
(
[0] => John the Ripper Cracks Slow Hashes On GPU
)
[45] => SimpleXMLElement Object
(
[0] => Soulskill
)
[46] => SimpleXMLElement Object
(
)
[47] => SimpleXMLElement Object
(
[0] => 2012-07-04T20:38:00+00:00
)
)
Upvotes: 0
Views: 2591
Reputation: 13986
I usually use for each for an array, in js you can do like this
var array = [];
array[0] = ['foo', 'bar'];
array[1] = ['baz'];
for (i in array){
for (j in array[i]){
document.write(array[i][j]) //this won't.
}
}
Someone said this is not safe but it still work :D
Upvotes: 0
Reputation: 26396
Try this
function writeMultiArrayToConsole(arr)
{
var console = document.getElementById('mydiv');
var msg = '';
for(var i=0;i<arr.length;i++)
{
for(var j=0;j<arr[0].length;j++)
msg += arr[i][j];
msg += '<br />';
}
console.innerHTML = msg;
}
Upvotes: 1
Reputation: 76408
This works fine for me, used array = [[1,2],[3,4]];
as a test array, output: 1234
. what do you get when you do document.write(JSON.parse(array));
or console.log(array);
?
Upvotes: 1