Javascript 是否替换数组中特定字段中的逗号?

Javascript 是否替换数组中特定字段中的逗号?,javascript,arrays,replace,Javascript,Arrays,Replace,我试图替换数组中特定字段中的逗号。例如,我有以下数组,表示从csv文件收集的数据: [ { "Month/Year": "2019-09", "group": "blue", "flights": "668,620" }, { "Month/Year": "2019-10", "group": "blue", "flights": "662,520" }, {

我试图替换数组中特定字段中的逗号。例如,我有以下数组,表示从csv文件收集的数据:

[
    {
      "Month/Year": "2019-09",
      "group": "blue",
      "flights": "668,620"
    },
    {
        "Month/Year": "2019-10",
        "group": "blue",
        "flights": "662,520"
    },
    {
        "Month/Year": "2019-09",
        "group": "green",
        "flights": "662,520"
    },
    {
        "Month/Year": "2019-10",
        "group": "green",
        "flights": "678,520"
    }
]
所需的

[
    {
      "Month/Year": "2019-09",
      "group": "blue",
      "flights": "668620"
    },
    {
        "Month/Year": "2019-10",
        "group": "blue",
        "flights": "662520"
    },
    {
        "Month/Year": "2019-09",
        "group": "green",
        "flights": "662520"
    },
    {
        "Month/Year": "2019-10",
        "group": "green",
        "flights": "678520"
    }
]

在使用此JSON之前,如何对其运行清理操作?我在想,当JSON被引入时,我会通过清理它来处理它,然后我可以使用它来绘制图形。

您可以使用数组函数映射:

const数据=[
{
“月/年”:“2019-09”,
“组”:“蓝色”,
“航班”:“668620”
},
{
“月/年”:“2019-10年”,
“组”:“蓝色”,
“航班”:“662520”
},
{
“月/年”:“2019-09”,
“集团”:“绿色”,
“航班”:“662520”
},
{
“月/年”:“2019-10年”,
“集团”:“绿色”,
“航班”:“678520”
}
]
const result=data.map(item=>{item.flights=item.flights.replace(“,”,”);return item})

log(result)
您可以使用简单的映射和替换方法

让newArray=array.map(obj=>{
obj.flights=obj.flights.replace(/,/g',);
返回obj;

})
假设调用此数组
arr
,则可以使用
elem.flights
(对于数组的每个元素)访问每个所需字段,并使用
replace(“,”,“”)删除其逗号。

arr=[
{
“月/年”:“2019-09”,
“组”:“蓝色”,
“航班”:“668620”
},
{
“月/年”:“2019-10年”,
“组”:“蓝色”,
“航班”:“662520”
},
{
“月/年”:“2019-09”,
“集团”:“绿色”,
“航班”:“662520”
},
{
“月/年”:“2019-10年”,
“集团”:“绿色”,
“航班”:“678520”
}
];
用于(arr的var要素){
elem.flights=elem.flights.replace(“,”,”);
控制台日志(元素飞行);

}
在javascript中有几种不同的方法可以循环数组。我喜欢老式的
循环

var obj = [
{
  "Month/Year": "2019-09",
  "group": "blue",
  "flights": "668,620"
},
{
    "Month/Year": "2019-10",
    "group": "blue",
    "flights": "662,520"
},
{
    "Month/Year": "2019-09",
    "group": "green",
    "flights": "662,520"
},
{
    "Month/Year": "2019-10",
    "group": "green",
    "flights": "678,520"
}];

for(var i = 0; i < obj.length; i++)
{
    obj[i]['flights'] = obj[i]['flights'].split(',').join('');
}
var obj=[
{
“月/年”:“2019-09”,
“组”:“蓝色”,
“航班”:“668620”
},
{
“月/年”:“2019-10年”,
“组”:“蓝色”,
“航班”:“662520”
},
{
“月/年”:“2019-09”,
“集团”:“绿色”,
“航班”:“662520”
},
{
“月/年”:“2019-10年”,
“集团”:“绿色”,
“航班”:“678520”
}];
对于(变量i=0;i

使用
.split(',')
将字符串转换为数组,然后
.join(“”)
将其转换回字符串,但不使用分隔符。

这会产生更改原始数据的副作用。如果您使用map创建新数组,则不应该这样做。您可能根本没有JSON,因为JSON是一种文本格式。你所展示的是一个对象数组。@HereticMonkey你是什么意思?这里绝对是JSON“绝对是JSON”?你是怎么决定的?此外,如果是这种情况,这里的所有答案都是错误的,因为没有一个解析JSON。@Andrew JSON始终是一个字符串。问题中的代码是JS对象文本。这是JSON文件中的一个示例。它最初是一个转换为JSON的csv。将来我会清理这个服务器端并加载到和API中,但是为了找出答案,这只是一个示例。这意味着现在有两个相同的数组。