Доступ к полю в строке json с круглыми скобками

Я выполняю запросы mysql с сервера узел.js и получаю JSONs в результате запроса. Когда stringified они показывают поля, в названии которых есть круглые скобки.

Вот пример: [{"COUNT(*)":8}]. Как получить доступ к этому полю?

Мой код даже не запустится, если я включу скобки, и я получу неопределенность, если я их не использую.

Любая помощь в том, как получить доступ к этому полю, будет принята с благодарностью. Спасибо!

Поскольку скобки не являются допустимыми именами свойств IIRC.

Jack Bashford 04.04.2019 00:34
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
1
1 011
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Мы говорим, что обращаемся к первому массиву [0], а затем обращаемся к значению ['COUNT(*)']. Это достигается за счет использования другой нотации.

let data = [{"COUNT(*)":8}];
console.info(data[0]["COUNT(*)"]);

// Or re-format it, but you did need to learn to access it.
let new_data = {'count': data[0]['COUNT(*)']};
console.info(new_data);
console.info(new_data.count)
Ответ принят как подходящий

Вместо этого вы можете получить доступ к этому значению, используя нотацию массива:

let o = [{"COUNT(*)":8}];
console.info(o[0]['COUNT(*)']);

Если вы можете отредактировать запрос, вы можете упростить его, добавив к нему псевдоним столбца:

SELECT COUNT(*) AS count ...

Тогда ваши данные будут выглядеть так:

[{count:8}]

Если они могут сами изменить запрос, это лучшее решение.

pmkro 04.04.2019 00:40
var array = [{"COUNT(*)":8}];
var keys = Object.keys(array);

// from the above we can get all the array element object keys. Since here used single object I have used below length - 1. We can make a loop if has many.

var key_values = array[keys[keys.length - 1]];

// The first object key has got now the first object key value if needed.

var object_keys = Object.keys(key_values);

Другие вопросы по теме