Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   преобразование массива с объектами в строку и обратно (https://javascript.ru/forum/dom-window/53167-preobrazovanie-massiva-s-obektami-v-stroku-i-obratno.html)

JustCrazy 23.01.2015 15:08

преобразование массива с объектами в строку и обратно
 
Добрый день, коллеги.

есть у меня массив с объектами примерно такого вида:
var array = [ {'a':1,'b':2},{'a':2,'b':3},{'a':4,'b':5} ]

через JSON.stringify я его преобразую в строку, а потом мне его надо переобразовать снова в массив с объектами, но вот тут и начинаются траблы, JSON.parse полную чепуху выдает, примерно тоже самое что через array.split(',') сделать.
Может кто подсказать как выкрутиться? может есть у кого под рукой хитрая регулярка для split ?

Safort 23.01.2015 15:12

Что именно не работает? У меня всё норм.
var array = [ {'a':1,'b':2},{'a':2,'b':3},{'a':4,'b':5} ];
var str = JSON.stringify(array);
var newObj = JSON.parse(str);
console.log(newObj);

JustCrazy 25.01.2015 08:58

если бы я знал, почему конкретно это не работает, не спрашивал бы... а так как и написал, он у меня массив криво собирает, аналогично
newArr = str.split(',')

В итоге каша..
забил костыль свой, вроде тьфу тьфу работает
newArr = str.split('||').replace(/},{/g,'}||{')

Aetae 25.01.2015 11:28

JustCrazy, да ну, брешишь.

danik.js 25.01.2015 11:46

Aetae, ну почему же. Я вот например абсолютно уверен что ему попался бракованный браузер, с ошибкой в JSON.parse. Брак на производстве, как известно, неизбежен. :)

SV0L0CH 25.01.2015 18:15

Думаю что надо подключить что-то вроде этого.
Только предварительно надо не забыть сделать так:
delete JSON.parse;
delete JSON.stringify;//если работает, то оставить


Часовой пояс GMT +3, время: 19:40.