gpt4 book ai didi

javascript - 在数组数组中循环

转载 作者:行者123 更新时间:2023-11-28 19:53:29 25 4
gpt4 key购买 nike

在我的下面的代码中,我无法获取数组中的数据

var str = "Service1|USER_ID, Service1|PASSWORD"
var str_array = str.split(',');
console.log(str_array)
for(var i = 0; i < str_array.length; i++)
{
str_array[i] = str_array[i].split('|');
}
console.log(str_array)

这是上面代码的响应

 /*  [ [ 'Service1', 'USER_ID' ],
[ 'Service1', 'PASSWORD' ] ]*/

我希望响应位于两个不同的数组中,如下所示

var array1 = ['Service1']
var array2 = ['USER_ID','PASSWORD']

对此的任何帮助都会非常有帮助

最佳答案

由于您在 Node 上,you can do this:

var str = "Service1|USER_ID, Service1|PASSWORD";
var result = str.split(',').reduce(function(collected,splitByComma){

var splitData = splitByComma.split('|');
var key = splitData[0].replace(/\s+/gi,''); //Might want to improve this "trim"
var data = splitData[1];


if(!collected.hasOwnProperty(key)) collected[key] = [];
collected[key].push(data);

return collected;
},{});

console.log(JSON.stringify(result)); //{"Service1":["USER_ID","PASSWORD"]}

//result.Service1[0] == USER_ID
//result.Service1[1] == PASSWORD

将东西放在不同的地方是不明智的。不过,您可以将它们放在对象键下。如果服务名称是可变的,那么你可以这样做:

var serviceName = "Service1";
result[serviceName][0] == USER_ID
result[serviceName][1] == PASSWORD

关于javascript - 在数组数组中循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23029020/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com