The array itself should be a value in a bigger Object, like so:
var obj = {
arr: [
{"id": "1", "details": {"name": "X", "type":"Y" }},
{"id": "2", "details": {"name": "aName", "type":"something" }}
]
}
Then you can do:
{{#arr}}
my id: {{id}}
{{/arr}}
the use for {{#bla}} is actually overloaded. When the property it acts upon is an array it will loop. When the property is an object itself it will 'enter' that object. Given your example:
{{#arr}}
my id: {{id}} <br/>
{{#details}}
and my name: {{name}}
{{/details}}
{{/arr}}