JSON.stringify() and .toSource() are convenient for viewing [object Object].
ref:
Implementing Mozilla's toSource() method in Internet Explorer
javascript:
   objRA=[
   {name:"Fred",city:"N.Y",friend:"Mike"},
   {name:"Dave",city:"S.F",friend:"Mike"},
   {name:"Dave",city:"S.F",friend:"Fred"},
   {name:"Mary",city:"S.F",friend:"Fred"},
   {name:"Mary",city:"S.F",friend:"Dave"},
   {name:"Dave",city:"S.F",friend:"Mary"},
   {name:"Fred",city:"N.Y",friend:"Mary"},
];
alert(JSON.stringify(objRA));
displays
[{"name":"Fred","city":"N.Y","friend":"Mike"},
{"name":"Dave","city":"S.F","friend":"Mike"},
{"name":"Dave","city":"S.F","friend":"Fred"},
{"name":"Mary","city":"S.F","friend":"Fred"},
{"name":"Mary","city":"S.F","friend":"Dave"},
{"name":"Dave","city":"S.F","friend":"Mary"},
{"name":"Fred","city":"N.Y","friend":"Mary"}]
BUT, if ...
javascript:
   objRA=[
        {name:"Mike"},
        {name:"Fred",city:"N.Y",friend: "?" },
        {name:"Dave",city:"S.F",friend: "?" },
        {name:"Dave",city:"S.F",friend: "?" },
        {name:"Mary",city:"S.F"},
        {name:"Mary",city:"S.F",friend: "?" },
        {name:"Dave",city:"S.F",friend: "?" },
        {name:"Fred",city:"N.Y"},
];
  objRA[1].friend=objRA[0];
  objRA[2].friend=objRA[0];
  objRA[3].friend=objRA[1];
  objRA[4].friend=objRA[1];
  objRA[5].friend=objRA[2];
  objRA[6].friend=objRA[4];
  objRA[7].friend=objRA[4];
alert(objRA.toSource().split("},").join("},\n"));
then only .toSource() can display (with a little manual persuasion):
    [#1={name:"Mike"},
     #2={name:"Fred", city:"N.Y", friend:#1#},
     #3={name:"Dave", city:"S.F", friend:#1#},
        {name:"Dave", city:"S.F", friend:#2#},
     #4={name:"Mary", city:"S.F", friend:#2#},
        {name:"Mary", city:"S.F", friend:#3#},
        {name:"Dave", city:"S.F", friend:#4#},
        {name:"Fred", city:"N.Y", friend:#4#}]