Iterating a JSON string with maps in JS

I have been trying to iterate in a JSON that contains a map within a map for hours with no luck…

This is the JSON string:

{“P31”:{“wikibase-entityid”:”Q16603799″},”P227″:{“string”:”1084653095″},”P1001″:{“wikibase-entityid”:”Q183″},”P1448″:{“monolingualtext”:”Verordnung über Sicherheit und Gesundheitsschutz bei der Verwendung von Arbeitsmitteln”},”P1813″:{“monolingualtext”:”Betriebssicherheitsverordnung”},”P7677″:{“string”:”betrsichv_2015″},”P580″:{“time”:”+2002-10-03T00:00:00Z”},”P2671″:{“string”:”/g/1224z0c0″},”P9696″:{“string”:”11477″}}

Image for an easy visual reference:
enter image description here

I basically want to create a loop inside which I’ve got access to the property (PXXX, first thing), the type of the property (key in the inner map) and the value of the property (value in the inner map).

I have tried to convert the string to a Map using “new Map(JSON.parse(jsonStr))”, “new Map(Object.entries(jsonStr))” and other with no luck.

Additionally, I tried to iterate inside it with a “for (var key in obj)” and with a “myMap.forEach((value_propertyInfo, key_propertyName) => {…}” without luck either.

Some times it looks like I am iterating char by char, while others simply throw an error saying that the map is not iterable.

Does anybody know what I should use instead?

Thanks!