我有这个字符串"[,,3,,]"
,现在我已经用这个字符串设置了chartjs的data属性。
chart.data.datasets.push({
label: label,
data: DataArray,
lineTension: 0.3,
pointBorderColor: 'blue',
pointBackgroundColor: 'rgba(255,150,0,0.5)',
pointRadius: 5,
pointHoverRadius: 10,
pointHitRadius: 30,
pointBorderWidth: 2,
pointStyle: 'rectRounded'
});
但不能是字符串。我该怎么办?
您可以将该字符串转换为Array,创建一个新函数以解析该字符串,然后使用Function constructor返回它,但这将创建一个带有未定义对象的Array:
function looseJsonParse(obj){
return Function('"use strict";return (' + obj + ')')();
}
const str = "[,,3,,]";
const DataArray = looseJsonParse(str);
console.log(DataArray);
如果只需要数据数组中的有效值,则可以简单地.filter()
个元素:
.filter()