j4nk3y: Array.from(obj)

Beitrag lesen

Salve,

Ich initialisiere ein Javscript Array durch var data = new Array().

Kann man abkürzen zu var data = [];

Richtig, aber ist das nicht letztendlich egal?

Dieses wird nach und nach durch verschiedene AJAX Requests mit eindimensionalen JSON Objekten gefüllt, frei nach dem Motto data['index'] = JSON.parse(response). Eine Überprüfung mittels console.log(data) gibt etwas aus wie [1: Object, 2: Object, ...]. Soweit sogut.

Wenn du Strings wie in 'index' (mit Anführungszeichen) verwendest, erzeugst du Objekteigenschaften und keine Array-Einträge. Ich nehme an, du meinst/nimmst keine Strings sondern Zahlen.

Hm ok. Dieses hab ich gefunden, welches auch einen 'string' als Index innerhalb eines Arrays nutzt. Worauf ich auch erst darauf gekommen bin, dass die iteration durch Mustache.js nur über Arrays funktioniert.

Nun die große Frage. Warum wird Object ausgegeben?

Arrays sind auch nur Objekte.

Das ist mir auch klar.

Es gibt in Javascript keinen Datentyp Array. Prüfen auf ein Array kann man mit Array.isArray(...)

Aber wenn es keine Arrays in Javascript gibt, wieso sollte dann die Überprüfung .isArray() Sinn haben?

Gruß
Jo