json ошибка ncaught SyntaxError
Не могу получить значение. data4.users.User1, пишет ошибку
let json4 ='{"users":{"User1":{"key1":"value1","key2":"value2"}},{"User2":{"key1":"value1","key2":"value2"}}}';
let data4 = JSON.parse(json4);
console.log(data4.users.User1);
Ответы (2 шт):
Автор решения: Алексей Шиманский
→ Ссылка
Невалидный Json. Сделайте его валидным.
Для начала закиньте своё произведение искусства в какой-либо онлнайн парсер, например https://jsonformatter.curiousconcept.com/# и посмотрите что не так. Затем исправьте, чтобы был валидным
А вместо того, чтобы сразу писать json в одну строку - проще вначале сформировать нужный объект, а потом сделать JSON.stringify. Тогда и JSON будет валидным
let test = {
user: 123,
name: 'haha',
what: {
some: 234,
hi: 'hi'
}
}
testString = JSON.stringify(test);
console.log(testString);
Если на стороне сервера, например PHP, то формирование json делается через json_encode
Автор решения: Simon
→ Ссылка
У Вас не валидный JSON. Должно быть:
let json4 ='{"users":{"User1":{"key1":"value1","key2":"value2"},"User2":{"key1":"value1","key2":"value2"}}}';
let data4 = JSON.parse(json4);
console.log(data4.users.User1);