Many web frameworks turn field names like user[address][city] into nested data. JSON bodies can nest as well, with objects inside objects. A request that nests hundreds or thousands of levels is not something a real client sends, but a parser has to deal with it anyway, and it may use a great deal of memory or stack space or hit an unusual code path.
Platforms provide limits to keep this in check. PHP has max_input_nesting_level for form data, with a default of 64, and json_decode takes a depth argument. Other languages and JSON libraries have comparable options, and some deeply recursive parsers have crashed because they had none.
Setting a sensible maximum depth is a cheap defense against both crashes and resource exhaustion. Most applications need only a handful of levels.
When you accept structured input from the internet, ask what the parser does with extreme input, and set explicit limits on size, field count and depth instead of relying on defaults.