Мне нужно получить значение и ось. Вот что у меня есть.
var d = [
[
{axis:"Customer Service",value:0.6},
{axis:"Data",value:0.6},
{axis:"Network",value:0.6},
{axis:"Product",value:0.6},
{axis:"Specialized",value:0.6},
{axis:"Threat",value:0.6},
],
[
{axis:"Customer Service",value:0.3},
{axis:"Data",value:0.3},
{axis:"Network",value:0.3},
{axis:"Product",value:0.3},
{axis:"Specialized",value:0.3},
{axis:"Threat",value:0.3},
]
function myFunction() {
var sample = d[0];
alert(sample);Есть ли способ получить вывод Обслуживание клиентов: 0,6



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Выберите нужный объект, затем alert значения:
var d = [
[
{axis:"Customer Service",value:0.6},
{axis:"Data",value:0.6},
{axis:"Network",value:0.6},
{axis:"Product",value:0.6},
{axis:"Specialized",value:0.6},
{axis:"Threat",value:0.6},
],
[
{axis:"Customer Service",value:0.3},
{axis:"Data",value:0.3},
{axis:"Network",value:0.3},
{axis:"Product",value:0.3},
{axis:"Specialized",value:0.3},
{axis:"Threat",value:0.3},
]];
var obj = d[0][0];
alert(obj.axis + ": " + obj.value);При просмотре составной структуры данных квадратные скобки будут представлять массивы, а фигурные скобки — объекты. В этом случае есть массив массивов, который содержит объекты, и объекты должны быть идентифицированы по их «оси».
var d = [
[
{axis:"Customer Service",value:0.6},
{axis:"Data",value:0.6},
{axis:"Network",value:0.6},
{axis:"Product",value:0.6},
{axis:"Specialized",value:0.6},
{axis:"Threat",value:0.6},
],
[
{axis:"Customer Service",value:0.3},
{axis:"Data",value:0.3},
{axis:"Network",value:0.3},
{axis:"Product",value:0.3},
{axis:"Specialized",value:0.3},
{axis:"Threat",value:0.3},
]
];
function myFunction() {
let sample = '';
let index = 0; // which of the array items is being looked at, if in a loop
// this value could be incremented to get the Customer Service value from
// all of the entries in the outer array.
d[index].forEach(function(dItem) { // loop through the array of a single object
// looping through allows you to access any of the axis objects, not just the first
if (dItem.axis === 'Customer Service') { // check which object
sample = dItem.value; // if the desired object then set sample
}
});
// alternatively check to see that sample is still not equal to '' before
// alerting
alert(sample);
}
myFunction();Ваше решение близко, вам просто нужно добавить закрывающую скобку и указать правильный индекс. Попробуйте запустить этот код в своем браузере.
var d = [
[
{axis:"Customer Service",value:0.6},
{axis:"Data",value:0.6},
{axis:"Network",value:0.6},
{axis:"Product",value:0.6},
{axis:"Specialized",value:0.6},
{axis:"Threat",value:0.6},
],
[
{axis:"Customer Service",value:0.3},
{axis:"Data",value:0.3},
{axis:"Network",value:0.3},
{axis:"Product",value:0.3},
{axis:"Specialized",value:0.3},
{axis:"Threat",value:0.3},
]];
function myFunction() {
var sample = d[0][0];
alert(sample.axis + ": " + sample.value);
}
myFunction();
Вот как вы получаете вывод службы поддержки клиентов: 0.6. (стиль ES6)
var d = [
[
{axis:"Customer Service",value:0.6},
{axis:"Data",value:0.6},
{axis:"Network",value:0.6},
{axis:"Product",value:0.6},
{axis:"Specialized",value:0.6},
{axis:"Threat",value:0.6},
],
[
{axis:"Customer Service",value:0.3},
{axis:"Data",value:0.3},
{axis:"Network",value:0.3},
{axis:"Product",value:0.3},
{axis:"Specialized",value:0.3},
{axis:"Threat",value:0.3},
]
];
const myFunction = () => {
let sample = ``;
let axis = ``;
let index = 0;
d[index].forEach(item => {
if (item.axis === `Customer Service`) {
axis = item.axis;
sample = item.value;
}
});
alert(`${axis}: ${sample}`); // Customer Service: 0.6
}
myFunction();
Спасибо, что помогло