Javascript 将 CSV 字符串映射到 JSON 数组
Javascript map CSV string to JSON array
这让我感到困惑,我什至不确定我是否在搜索正确的关键字以寻找可能的解释。
我正在向远程服务器发送 RPC。我得到的响应只是一个逗号分隔的字符串,其中包含值(无键),如下所示:
val1,val2,val3,val4,val5,val6,val7,val8,val9
当我收到此响应时,我需要通过 JS 将这些值映射到键(硬编码,我指定)并生成一个 JSON 数组,如下所示:
{
"response": {
"mykey1" : "val1",
"mykey2" : "val2",
"mykey3" : "val3",
"mykey4" : "val4",
"mykey5" : "val5",
"mykey6" : "val6",
"mykey7" : "val7",
"mykey8" : "val8",
"mykey9" : "val9"
}
}
任何人都可以在正确的方向推动我...接近我正在寻找的示例代码或教程吗?这是一个中间件脚本,当服务器收到响应时被调用。
这是我第一次 post 在这里,我一直在寻找 Obj-C 的学习和应用,而我正在学习 Swift,但 JS 对我来说是新手。如果我在没有 post 试图解决这个问题的微弱尝试的情况下寻求帮助而违反了任何协议,我会提前道歉...
阅读我的评论,然后查看:
var result = 'val1,val2,val3,val4,val5,val6,val7,val8,val9';
// real question should be why result is not JSON already
var resArray = result.split(',');
console.log(resArray[0]); // first result
console.log(resArray[1]); // second result
你可以split
逗号上的回复,这会给你一个数组。
由于两个数组(keys 和 vals)的长度相同,您可以遍历其中任何一个并以此方式创建对象数组。见下文
var response = 'val1,val2,val3,val4,val5';
var keys = [
'key1', 'key2', 'key3', 'key4', 'key5'
];
var dict = [];
var vals = response.split(',');
vals.forEach(function(val, i) {
dict[keys[i]] = val;
});
console.log(dict);
这让我感到困惑,我什至不确定我是否在搜索正确的关键字以寻找可能的解释。
我正在向远程服务器发送 RPC。我得到的响应只是一个逗号分隔的字符串,其中包含值(无键),如下所示:
val1,val2,val3,val4,val5,val6,val7,val8,val9
当我收到此响应时,我需要通过 JS 将这些值映射到键(硬编码,我指定)并生成一个 JSON 数组,如下所示:
{
"response": {
"mykey1" : "val1",
"mykey2" : "val2",
"mykey3" : "val3",
"mykey4" : "val4",
"mykey5" : "val5",
"mykey6" : "val6",
"mykey7" : "val7",
"mykey8" : "val8",
"mykey9" : "val9"
}
}
任何人都可以在正确的方向推动我...接近我正在寻找的示例代码或教程吗?这是一个中间件脚本,当服务器收到响应时被调用。
这是我第一次 post 在这里,我一直在寻找 Obj-C 的学习和应用,而我正在学习 Swift,但 JS 对我来说是新手。如果我在没有 post 试图解决这个问题的微弱尝试的情况下寻求帮助而违反了任何协议,我会提前道歉...
阅读我的评论,然后查看:
var result = 'val1,val2,val3,val4,val5,val6,val7,val8,val9';
// real question should be why result is not JSON already
var resArray = result.split(',');
console.log(resArray[0]); // first result
console.log(resArray[1]); // second result
你可以
split
逗号上的回复,这会给你一个数组。由于两个数组(keys 和 vals)的长度相同,您可以遍历其中任何一个并以此方式创建对象数组。见下文
var response = 'val1,val2,val3,val4,val5';
var keys = [
'key1', 'key2', 'key3', 'key4', 'key5'
];
var dict = [];
var vals = response.split(',');
vals.forEach(function(val, i) {
dict[keys[i]] = val;
});
console.log(dict);