2016-09-04 2 views
0

Ich habe ein Array wie folgt:Javascript Array nicht als Array zeigt sich

var data = {"result":"success","ids":["00000","54321","123","22222","11111","55555","33333","abc123","123abc","12345","44444"]} 
localStorage.ids = data.ids; 

Aber jetzt, wenn ich tun:

angular.forEach(localStorage.ids, function(id, key) { 
    console.log(id); 
}); 

ich wie:

0 
0 
0 
0 
0 
, 
5 
4 
3 

Und bald.

Als ich console.log(JSON.stringify(localStorage.ids)); erhalte ich:

"00000,54321,123,22222,11111,55555,33333,abc123,123abc,12345,44444" 

Weiß jemand, warum dies geschehen würde?

+0

Es sieht für mich wie entweder einige Code, den Sie ausgelassen haben, ist stingifying 'localStorage.ids' vor dem' forEach' Schleife oder Winkel des 'forEach' funktioniert nicht wie erwartet. – theonlygusti

Antwort

1

localStorage speichert nur Zeichenfolgen.

localStorage.setItem('ids', JSON.stringify(data.ids)); // to save 

var ids = JSON.parse(localStorage.getItem('ids')); // to get