Push Items to Array using drupal_add_js
The problem seems to be the key of the nested array, where you are using 'VAR', you are repeating this key and that makes PHP to override the value on the array (or on the object on Js).

I think you would have to use the 'VAR' key on a slightly different way:

drupal_add_js(array('THINGS' =&gt; array(
    'ONE' =&gt; array(
      'VAR' =&gt; 'blah blah blah', 
      'VAR_ONE' =&gt; 'blah blah blah one'
    ), 
    'TWO' =&gt; array(
      'VAR' =&gt; 'blah blah blah two', 
      'VAR_ONE' =&gt; 'blah blah blah two'
    ), 
    'THREE' =&gt; array(
      'VAR' =&gt; 'blah blah blah three', 
      'VAR_ONE' =&gt; 'blah blah blah three three'
    )
  )
));


to get what you are looking:

"THINGS":{"ONE":{"VAR":"blah blah blah", "VAR":"blah blah blah one"},"TWO":{"VAR":"blah blah blah two","VAR":"blah blah blah two two"},"THREE":{"VAR":"blah blah blah three","VAR":"blah blah blah three three"}}