gpt4 book ai didi

javascript - 打印文件中的数组数组

转载 作者:行者123 更新时间:2023-11-30 20:32:24 25 4
gpt4 key购买 nike

我有一个这样的数组:

var ex = [{'id': 10, 'name': 'b', 'r': ['bill', 'ben']},
{'id': 12, 'name': 'c', 'r': ['carl']},
{'id': 4, 'name': 'a', 'r': ['alan', 'alexander', 'alexis']},
{'id': 14, 'name': 'z', 'r': []}];

我想以如下格式在文件中打印此数组:

0: 'id': 10, 
'name': 'b',
'r':
0: 'bill',
1: 'ben',
1: 'id': 12,
'name': 'c',
'r':
0: 'carl',
2: 'id': 4,
'name': 'a',
'r':
0: 'alan',
1: 'alexander',
2: 'alexis',
3: 'id': 14,
'name': 'z',
'r':

重要的是清楚哪些元素包含在哪些元素中。

我该怎么做?

最佳答案

您可以使用递归方法生成嵌套对象的所需输出。

function printObject(obj, prefix = '', space = '\t') {
// iterate over all keys of the object(array is also an object)
return Object.keys(obj).map(function(k) {
// if nested property is object then recursively call the function
if (typeof obj[k] === 'object')
return prefix + k + ' : \n' + printObject(obj[k], prefix + space, space);
// else print the value with the key
else
return prefix + k + ' : ' + obj[k];
// finally join all the values with new line character
}).join('\n');
}

function printObject(obj, prefix = '', space = '\t') {
return Object.keys(obj).map(function(k) {
if (typeof obj[k] === 'object')
return prefix + k + ' : \n' + printObject(obj[k], prefix + space, space);
else
return prefix + k + ' : ' + obj[k];
}).join('\n');
}



var ex = [{
'id': 10,
'name': 'b',
'r': ['bill', 'ben']
},
{
'id': 12,
'name': 'c',
'r': ['carl']
},
{
'id': 4,
'name': 'a',
'r': ['alan', 'alexander', 'alexis']
},
{
'id': 14,
'name': 'z',
'r': []
}
];

console.log(printObject(ex))


要获得与您的问题相同的输出:

function printObject(obj, prefix = '', space = '\t') {
return Object.keys(obj).map(function(k, i) {
if (typeof obj[k] === 'object')
return prefix + k + ' : ' + printObject(obj[k], prefix + space, space);
else
return (i ? prefix : prefix.replace(space,'')) + k + ' : ' + obj[k];
}).join('\n');
}



var ex = [{
'id': 10,
'name': 'b',
'r': ['bill', 'ben']
},
{
'id': 12,
'name': 'c',
'r': ['carl']
},
{
'id': 4,
'name': 'a',
'r': ['alan', 'alexander', 'alexis']
},
{
'id': 14,
'name': 'z',
'r': []
}
];

console.log(printObject(ex))

关于javascript - 打印文件中的数组数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50197645/

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