如何在 React Native 中创建具有 X Y 坐标的动态数组



你好朋友们,我想在 JSON 数组值的帮助下创建 x-y 坐标的动态数组,所以低于 JSON 值

"data": [
{
"x_value": 1,
"y_value": 1527116400
},
{
"x_value": 43.45,
"y_value": 1527030000
},
{
"x_value": 43.95,
"y_value": 1526943600
},
{
"x_value": 43.95,
"y_value": 1526857200
},
{
"x_value": 44.05,
"y_value": 1526598000
},
{
"x_value": 44.25,
"y_value": 1526511600
},
{
"price": 44.1,
"y_value": 1526425200
},
{
"x_value": 44.3,
"y_value": 1526338800
},
{
"x_value": 44.25,
"y_value": 1526252400
}
]

我的 Js 代码如下

var data = null;
var array_data = response.sData.chart_data;
for (let index = 0; index < chart_data.length; index++) {
data.push({ array_data[index].x_value, y: chart_data[index].y_value });
}

当我运行上面的代码时,我收到错误消息,例如;

TypeError: null 不是对象(计算 'data.push'(

知道我该如何解决这个问题吗?您的所有建议都是可观的。

在你的代码中,你不能在布尔var data = null;变量上使用Array.prototype.push()

最好使用 Array.prototype.map((,它创建一个新数组,其中包含在调用数组中的每个元素上调用提供的函数的结果。

代码示例:

const chart_data = [{"x_value": 1,"y_value": 1527116400},{"x_value": 43.45,"y_value": 1527030000},{"x_value": 43.95,"y_value": 1526943600},{"x_value": 43.95,"y_value": 1526857200},{"x_value": 44.05,"y_value": 1526598000},{"x_value": 44.25,"y_value": 1526511600},{"price": 44.1,"y_value": 1526425200},{"x_value": 44.3,"y_value": 1526338800},{"x_value": 44.25,"y_value": 1526252400}];
const data = chart_data.map(coordinate => ({
x: coordinate.x_value,
y: coordinate.y_value
}));
console.log(data);

最新更新