Показать сообщение отдельно
  #8 (permalink)  
Старый 16.12.2016, 20:46
Интересующийся
Отправить личное сообщение для rustleofstars Посмотреть профиль Найти все сообщения от rustleofstars
 
Регистрация: 30.03.2012
Сообщений: 24

Решил проблему формирования корректного json таким образом:

// Массив с данными 
var object = [];
$$(".ct_obj").each(function(){

object[c1] = [];
object[c1][c2] = '"group": "'+group+'"'; c2++;
object[c1][c2] = '"index": "'+index+'"'; c2++;

c1++;
c2 = 0;
});

// Помещение данных из массива в json 
var mstr = '';
for(var ic = 0; ic < object.length; ic++){
mstr = mstr+'{';
for(var yc = 0; yc < object.length; yc++){
var nyc = yc+1;
if (object[nyc]){
mstr = mstr+''+object[ic][yc]+',';
}else{
mstr = mstr+''+object[ic][yc]+'';	
}
		
}
var nic = ic+1;
if (object[nic]){
mstr = mstr+'},';
}else{
mstr = mstr+'}';		
}
}

var ctdata = "{\"objects\":[";
ctdata = ctdata+=mstr;
ctdata = ctdata+= "]}";
}

Получается валидный json. Но при преобразовании полученного json в строку
var str = JSON.stringify(ctdata);

При последующем парсинге этой строки обратно в значение
var objects = JSON.parse(str.objects);

Вылетает такая вот ошибка:
VM22590:1 Uncaught SyntaxError: Unexpected token o in JSON at position 1
Ответить с цитированием