Я собираюсь объяснить это как можно лучше. Прежде всего, я использую Underscore. Я делаю очень простую визуализацию данных для набора данных.Подстрочный метод _.map() и конструктор объектов
В этот момент я просто пытаюсь получить данные, которые я хочу.
Прежде чем я объясню далее, здесь приведен фрагмент моих данных.
var data =
[
{
"id": "a09f4967-10a8-53c1-b53f-8e49ee255734",
"type": "chat",
"requested_by": "[email protected]",
"initial_message": "And here I am using my own lungs like a sucker.",
"created_at": 1420190706057,
"page_url": "http://www.awesome3ftcakes.com/contact-us.html",
"referrer_url": "http://www.bing.com/search?q=top",
"entry_url": "unknown",
"ip_address": "132.145.187.8",
"user_agent": "Mozilla/5.0 (Windows NT 6.1; rv:11.4) Gecko/20100101 Firefox/11.4.6",
"latitude": 51.339695,
"longitude": 12.373075,
"chat_waittime": 10,
"chat_duration": 205,
"survey_score": 30,
"language_code": "",
"transcript": [
{
"date": 1420190706057,
"alias": "Zoidberg",
"message": "And here I am using my own lungs like a sucker."
},
{
"id": "[email protected]",
"date": 1420190733788,
"alias": "Jerome",
"message": "Hi. I'm Troy McClure. You may remember me from such self-help tapes as \"Smoke Yourself Thin\" and \"Get Some Confidence, Stupid!\""
}
]
}, ...
Итак, вот моя проблема:
Я создаю функцию конструктора следующим образом:
function ChatSession(data) {
this.duration = data.chat_duration;
this.score = data.survey_score;
this.repId = data.transcript;
};
var mappedObjects = _.map(data, function(chatSessionData) {
return new ChatSession(chatSessionData)
});
console.log(mappedObjects);
Если вы посмотрите на изображение^выше, вы увидите что я получаю свои новые объекты ChatSession, с длительностью, затем с расшифровкой стенограммы, а затем оценка.
Где я столкнулся с проблемой, это ... Я хочу быть более конкретным в расшифровке стенограммы. Я хочу ссылаться на второй объект в массиве транскриптов и получить конкретный идентификатор или псевдоним.
Я пробовал много вещей и в основном получал ту же ошибку. Например, я попытался это:
function ChatSession(data) {
this.duration = data.chat_duration;
this.score = data.survey_score;
this.repId = data.transcript[1].id;
};
и я получаю следующее сообщение в консоли:
Uncaught TypeError: Cannot read property 'id' of undefined
Даже если я часть Ид прочь, ошибка все еще говорит:
Uncaught TypeError: Cannot read property '1' of undefined
Любая помощь будет принята с благодарностью. Я ударяю головой о стену.