Не может ссылаться на данные JSON с D3 JS, если они имеют пробелы
Я получил файл JSON со значением, в котором есть пробел. вот так:
"Project 3":6
Если я попробую что-то сделать в D3.js с данными вроде так
var meanProject3 = d3.mean(data, function(d) {return d.project 3 });
console.log(meanProject3);
я получил следующую ошибку:
Uncaught SyntaxError: Unexpected token }
Если я пробую это с узлами, у которых нет пробела, это работает хорошо. Я не могу редактировать файл JSON. Есть ли другой способ сделать эту работу?
2 ответа
Решение
Нельзя использовать точечную запись, если в имени свойства есть специальные символы, такие как пробел. Пытаться:
return d['Project 3']
Обратите внимание, что имена свойств чувствительны к регистру.
В этом случае вы должны использовать скобочные обозначения, см. Этот пример
var test = {
"Project 3":"found it"
};
alert(test["Project 3"]);