19.07.2018, 14:06
|
Кандидат Javascript-наук
|
|
Регистрация: 11.02.2013
Сообщений: 102
|
|
Как прочитать не стандартный JSON
доброго дня.
есть файл file.json в котором содержатся строки
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
подскажите пожалуйста, как считывать данные по по отдельности в виде таблицы:
John | Doe | 35 | Male | English | car | Honda
John | Doe | 35 | Male | English | car | Honda
пробую $.getJSON() но так как формат не совсем верный, выходит ошибка (
|
|
19.07.2018, 14:16
|
|
Профессор
|
|
Регистрация: 01.12.2016
Сообщений: 3,650
|
|
var data = [{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"},
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"},
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"},
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}];
console.log(data.map(el=>Object.values(el).join(' | ')).join('\n'));
|
|
19.07.2018, 14:33
|
Кандидат Javascript-наук
|
|
Регистрация: 11.02.2013
Сообщений: 102
|
|
Сообщение от j0hnik
|
console.log(data.map(el=>Object.values(el).join(' | ')).join('\n'));[/JS]
|
спасибо. но выходят 0 везде почему то
когда я делаю alert(data) то выводятся строки:
{"name":"John","lastName":"Doe","age":35,"gende r":"Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
вот эти строки, я хотел привести к нормальном виду. желательно даже в <li> как то загнать каждую строку
|
|
19.07.2018, 14:49
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
Зосимов,
на сервере можно сделать JSON ?
|
|
19.07.2018, 14:56
|
|
Профессор
|
|
Регистрация: 25.10.2016
Сообщений: 1,012
|
|
Сообщение от Зосимов
|
спасибо. но выходят 0 везде почему то
когда я делаю alert(data) то выводятся строки:
{"name":"John","lastName":"Doe","age":35,"gende r":"Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
вот эти строки, я хотел привести к нормальном виду. желательно даже в <li> как то загнать каждую строку
|
набросок
var data = `{"name":"John","lastName":"Doe","age":35,"gende r":"Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}
`;
alert(data.trim().split(/\r?\n/).map(function(item) {
var data = JSON.parse(item);
return data.name + ' | ' + data.lastName;
}).join('\n'));
|
|
19.07.2018, 14:57
|
Кандидат Javascript-наук
|
|
Регистрация: 11.02.2013
Сообщений: 102
|
|
Сообщение от рони
|
Зосимов,
на сервере можно сделать JSON ?
|
каждый раз при нажатии кнопки, записываются такие данные
let student = {
name: 'John',
lastName: 'Doe',
age: 35,
gender: 'Male',
department: 'English',
car: 'Honda'
};
let data = JSON.stringify(student);
я так понимаю данные нужно привести в правильный формат?
|
|
19.07.2018, 15:04
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
Зосимов,
let arr = [];
let student = {
name: 'John',
lastName: 'Doe',
age: 35,
gender: 'Male',
department: 'English',
car: 'Honda'
};
arr.push(student)
let data = JSON.stringify(arr);
|
|
19.07.2018, 15:24
|
Кандидат Javascript-наук
|
|
Регистрация: 11.02.2013
Сообщений: 102
|
|
Сообщение от рони
|
Зосимов,
let arr = [];
let student = {
name: 'John',
lastName: 'Doe',
age: 35,
gender: 'Male',
department: 'English',
car: 'Honda'
};
arr.push(student)
let data = JSON.stringify(arr);
|
теперь данные выглядят так в файле
[{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}]
[{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}]
[{"name":"John","lastName":"Doe","age":35,"gender": "Male","department":"English","car":"Honda"}]
осталось только их получить правильно с файла
|
|
19.07.2018, 15:27
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
Зосимов,
а нельзя всех студентов сначала добавить и только потом сделать JSON из массива?
|
|
19.07.2018, 15:30
|
Кандидат Javascript-наук
|
|
Регистрация: 11.02.2013
Сообщений: 102
|
|
рони, к сожалению нет. получается каждый раз в файл добавляем записи.
они там хранятся и выводятся для просмотра.
|
|
|
|