 <pre><code>my $_pCombos = [ [{row =&gt; 9,col =&gt; 0},{row =&gt; 1,col =&gt; 9},{row =&gt; 1,col =&gt; 2},{row =&gt; 1,col =&gt; 3},{row =&gt; 1,col =&gt; 4}], [{row =&gt; 0,col =&gt; 0},{row =&gt; 0,col =&gt; 1},{row =&gt; 0,col =&gt; 2},{row =&gt; 0,col =&gt; 3},{row =&gt; 0,col =&gt; 4}], [{row =&gt; 2,col =&gt; 0},{row =&gt; 2,col =&gt; 1},{row =&gt; 2,col =&gt; 2},{row =&gt; 2,col =&gt; 3},{row =&gt; 2,col =&gt; 4}], [{row =&gt; 0,col =&gt; 0},{row =&gt; 1,col =&gt; 1},{row =&gt; 2,col =&gt; 2},{row =&gt; 1,col =&gt; 3},{row =&gt; 0,col =&gt; 4}], ]; print $_pCombos-&gt;[0][0]{row}, "\n"; print $_pCombos-&gt;[0][1]{col}, "\n"; </code></pre> <p>will print</p> <pre><code>9 9 </code></pre> <p>if you want to maintain the javascript syntax, you can use json, like this:</p> <pre><code>use JSON::XS; my $_pCombos_JSON_normalized = &lt;&lt;'END'; [ [{"row":9,"col":0},{"row":1,"col":9},{"row":1,"col":2},{"row":1,"col":3},{"row":1,"col":4}], [{"row":0,"col":0},{"row":0,"col":1},{"row":0,"col":2},{"row":0,"col":3},{"row":0,"col":4}], [{"row":2,"col":0},{"row":2,"col":1},{"row":2,"col":2},{"row":2,"col":3},{"row":2,"col":4}], [{"row":0,"col":0},{"row":1,"col":1},{"row":2,"col":2},{"row":1,"col":3},{"row":0,"col":4}] ] END my $_pCombos = decode_json($_pCombos_JSON_normalized); print $_pCombos-&gt;[0][0]{row}, "\n"; print $_pCombos-&gt;[0][1]{col}, "\n"; </code></pre> <p>will also print</p> <pre><code>9 9 </code></pre>