Javascript 如何返回图表中的数据?
我试图通过以下方式返回放入Javascript 如何返回图表中的数据?,javascript,react-native,Javascript,React Native,我试图通过以下方式返回放入dataconst中的数据: const data = this.state.grades.map((grade) => { const object = {} score = null; if (90 <= grade.value) { score = "A";
data
const中的数据:
const data =
this.state.grades.map((grade) => {
const object = {}
score = null;
if (90 <= grade.value) {
score = "A";
object.name = "A",
object.population = grade.value,
object.color = "#27ae60",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (80 <= grade.value && grade.value < 90) {
score = "B";
object.name = "B",
object.population = grade.value,
object.color = "#2ecc71",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (70 <= grade.value && grade.value < 80) {
score = "C";
object.name = "C",
object.population = grade.value,
object.color = "#feca57",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (60 <= grade.value && grade.value < 70) {
score = "D";
object.name = "D",
object.population = grade.value,
object.color = "#f39c12",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (50 <= grade.value && grade.value < 60) {
score = "E";
object.name = "E",
object.population = grade.value,
object.color = "#e74c3c",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (50 <= grade.value && grade.value < 60) {
score = "F";
object.name = "F",
object.population = grade.value,
object.color = "#c0392b",
object.legendFontColor = "#c0392b",
object.legendFontSize = 15
}
return object;
});
{
name: "F",
population: 1,
color: "#c0392b",
legendFontColor: "#7F7F7F",
legendFontSize: 15
}
数据处理后的处理方式如下:
const data =
this.state.grades.map((grade) => {
const object = {}
score = null;
if (90 <= grade.value) {
score = "A";
object.name = "A",
object.population = grade.value,
object.color = "#27ae60",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (80 <= grade.value && grade.value < 90) {
score = "B";
object.name = "B",
object.population = grade.value,
object.color = "#2ecc71",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (70 <= grade.value && grade.value < 80) {
score = "C";
object.name = "C",
object.population = grade.value,
object.color = "#feca57",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (60 <= grade.value && grade.value < 70) {
score = "D";
object.name = "D",
object.population = grade.value,
object.color = "#f39c12",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (50 <= grade.value && grade.value < 60) {
score = "E";
object.name = "E",
object.population = grade.value,
object.color = "#e74c3c",
object.legendFontColor = "#7F7F7F",
object.legendFontSize = 15
} else if (50 <= grade.value && grade.value < 60) {
score = "F";
object.name = "F",
object.population = grade.value,
object.color = "#c0392b",
object.legendFontColor = "#c0392b",
object.legendFontSize = 15
}
return object;
});
{
name: "F",
population: 1,
color: "#c0392b",
legendFontColor: "#7F7F7F",
legendFontSize: 15
}
我用我自己的常量
等级运行了你的代码,看起来是这样的:
const grades = [{ value: 100 }, { value: 50 }, { value: 20 }, { value: 90 }, { value: 30 }];
您的代码返回给我:
[{
name: 'A',
population: 100,
color: '#27ae60',
legendFontColor: '#7F7F7F',
legendFontSize: 15
},
...
]
因此,地图正在处理一组对象,其中包含键value
。您需要检查您的this.state.grades
看起来像什么,数组grades
中的对象是否包含值
grade.value
与任何if
规则都不匹配,并为每个等级返回一个空对象