</code></pre></div><p>Assume the value is parsed to a <code>json</code> variable <code>j</code>.</p><table><thead><tr><th>expression</th><th>value</th></tr></thead><tbody><tr><td><codeclass=highlight><spanclass=n>j</span><spanclass=w></span></code></td><td><codeclass=highlight><spanclass=p>{</span><spanclass=nt>"name"</span><spanclass=p>:</span><spanclass=w></span><spanclass=s2>"Mary Smith"</span><spanclass=p>,</span><spanclass=w></span><spanclass=nt>"age"</span><spanclass=p>:</span><spanclass=w></span><spanclass=mi>42</span><spanclass=p>,</span><spanclass=w></span><spanclass=nt>"hobbies"</span><spanclass=p>:</span><spanclass=w></span><spanclass=p>[</span><spanclass=s2>"hiking"</span><spanclass=p>,</span><spanclass=w></span><spanclass=s2>"reading"</span><spanclass=p>]}</span><spanclass=w></span></code></td></tr><tr><td><codeclass=highlight><spanclass=n>j</span><spanclass=p>.</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=s>"name"</span><spanclass=p>)</span><spanclass=w></span></code></td><td><codeclass=highlight><spanclass=s2>"Mary Smith"</span><spanclass=w></span></code></td></tr><tr><td><codeclass=highlight><spanclass=n>j</span><spanclass=p>.</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=s>"age"</span><spanclass=p>)</span><spanclass=w></span></code></td><td><codeclass=highlight><spanclass=mi>42</span><spanclass=w></span></code></td></tr><tr><td><codeclass=highlight><spanclass=n>j</span><spanclass=p>.</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=s>"hobbies"</span><spanclass=p>)</span><spanclass=w></span></code></td><td><codeclass=highlight><spanclass=p>[</span><spanclass=s2>"hiking"</span><spanclass=p>,</span><spanclass=w></span><spanclass=s2>"reading"</span><spanclass=p>]</span><spanclass=w></span></code></td></tr><tr><td><codeclass=highlight><spanclass=n>j</span><spanclass=p>.</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=s>"hobbies"</span><spanclass=p>).</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=mi>0</span><spanclass=p>)</span><spanclass=w></span></code></td><td><codeclass=highlight><spanclass=s2>"hiking"</span><spanclass=w></span></code></td></tr><tr><td><codeclass=highlight><spanclass=n>j</span><spanclass=p>.</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=s>"hobbies"</span><spanclass=p>).</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=mi>1</span><spanclass=p>)</span><spanclass=w></span></code></td><td><codeclass=highlight><spanclass=s2>"reading"</span><spanclass=w></span></code></td></tr></tbody></table></details><p>The return value is a reference, so it can be modified by the original value.</p><detailsclass=example><summary>Write access</summary><divclass=highlight><pre><span></span><code><spanclass=n>j</span><spanclass=p>.</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=s>"name"</span><spanclass=p>)</span><spanclass=w></span><spanclass=o>=</span><spanclass=w></span><spanclass=s>"John Smith"</span><spanclass=p>;</span><spanclass=w></span>
</code></pre></div><p>This code produces the following JSON value:</p><divclass=highlight><pre><span></span><code><spanclass=p>{</span><spanclass=w></span>
</code></pre></div></details><p>When accessing an invalid index (i.e., an index greater than or equal to the array size) or the passed object key is non-existing, an exception is thrown.</p><detailsclass=example><summary>Accessing via invalid index or missing key</summary><divclass=highlight><pre><span></span><code><spanclass=n>j</span><spanclass=p>.</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=s>"hobbies"</span><spanclass=p>).</span><spanclass=n>at</span><spanclass=p>(</span><spanclass=mi>3</span><spanclass=p>)</span><spanclass=w></span><spanclass=o>=</span><spanclass=w></span><spanclass=s>"cooking"</span><spanclass=p>;</span><spanclass=w></span>
</code></pre></div><p>This code produces the following exception:</p><divclass=highlight><pre><span></span><code>[json.exception.out_of_range.401] array index 3 is out of range
</code></pre></div><p>When you <ahref=../../../home/exceptions/#extended-diagnostic-messages>extended diagnostic messages</a> are enabled by defining <ahref=../../../api/macros/json_diagnostics/><code>JSON_DIAGNOSTICS</code></a>, the exception further gives information where the key or index is missing or out of range.</p><divclass=highlight><pre><span></span><code>[json.exception.out_of_range.401] (/hobbies) array index 3 is out of range