"Maybe someone shed some light or some link where I can read more?"
When you are dealing with JSON
data, you can refer to json.org to read about specification requirements.
In JSON
, Array
is a list of orders of values ββseparated by a character,.

So JSON.stringify()
simply ignores everything that cannot be represented as a simple ordered list.
So, if you ...
var simpleArray = []; simpleArray.foo = 'bar';
... you still provide an array, so it expects only numeric indices and ignores anything else.
Since JSON
is language independent, JSON
methods must decide which language structure is best for each JSON
structure.
So JSON has the following structures ...
{}
It should be noted that although the appearance is very similar to JavaScript
objects and arrays, they are not exactly the same.
Any JavaScript
structures used to create JSON
structures must match JSON
structures. This is why non-numeric properties removed are excluded.
Until JavaScript
objects to them, JSON
will not tolerate them.
user1106925
source share