Javascript 对象的Java脚本键值对

Javascript 对象的Java脚本键值对,javascript,reactjs,Javascript,Reactjs,我是javascript新手。我有以下格式的数据数组: Toronto, Ontario: 95 Markham, Ontario: 71 我想将其转换为对象数组: 这样,才能与其他功能保持一致 我试过: reportData.fbcity = Object.keys(reportData.city).map((city) => { return { city: city, value: reportData.city[city] };

我是javascript新手。我有以下格式的数据数组:

Toronto, Ontario: 95 
Markham, Ontario: 71
我想将其转换为对象数组:

这样,才能与其他功能保持一致

我试过:

reportData.fbcity = Object.keys(reportData.city).map((city) => {
    return {
        city: city,
        value: reportData.city[city]
    };
});
我得到的是:
{城市:“安大略省马卡姆市”:“价值”:71}

根据您的最新问题,我认为您有以下问题:

const start = ["Toronto, Ontario: 95", "Markham, Ontario: 71"];
你想要这个:

result = [
    {"Toronto, Ontario": 95},
    {"Markham, Ontario": 71}
];
为此,需要将字符串末尾的数字拆分,然后使用字符串的两个部分构建对象。如果您知道只有一个
,那么:

const result = start.map(str => {
    const [city, number] = str.split(":");
    return {
        [city]: +number
    };
});
实例:

const start=[“安大略省多伦多:95”,“安大略省马卡姆:71”];
const result=start.map(str=>{
const[城市,编号]=str.split(“:”);
返回{
[城市]:+数字
};
});

控制台日志(结果)您可以使用
map
split

  • 使用
    进行拆分,然后构建一个对象
  • +
    用于将字符串转换为数字
let data=[“安大略省多伦多:95”,“安大略省马卡姆:71”];
让op=data.map(val=>{
let[key,value]=val.split(“:”)
返回{[key]:+value}
})

console.log(op)
预期的输出错误
{Toronto,Ontario:95}
不是有效的对象。您所需的格式不是有效的对象,请更新适当的数据是的,但我只希望使用该格式,以便将其传递给现有函数。@kevin-但由于引用的格式(可能)无效(并且您的起点也很模糊),我们不知道你的意思。至少有两种不同的方式可以解释你所说的你想要的,而我至少可以用两种方式来解释你所说的你的出发点是什么。我希望知道一些有趣的理由:)@CodeManiac-不,真的没有理由,我要删除它。:-)非常清楚正在处理的空白。
const result = start.map(str => {
    const [city, number] = str.split(":");
    return {
        [city]: +number
    };
});