Javascript 数组对象值未显示
我试图清理一些数据,并将一个对象数组放在一个对象中。这是我的对象数组 职业状态:Javascript 数组对象值未显示,javascript,node.js,json,Javascript,Node.js,Json,我试图清理一些数据,并将一个对象数组放在一个对象中。这是我的对象数组 职业状态: [ { gp: '35', gs: '34', mpg: '33.2', fg: '.515', tp: '1.5', ft: '1.4', rpg: '0.5', apg: '0.7', bpg: '.692', spg: '0.7', ppg: '3.6' }, { gp: '22', gs: '
[
{
gp: '35',
gs: '34',
mpg: '33.2',
fg: '.515',
tp: '1.5',
ft: '1.4',
rpg: '0.5',
apg: '0.7',
bpg: '.692',
spg: '0.7',
ppg: '3.6'
},
{
gp: '22',
gs: '22',
mpg: '36.7',
fg: '.504',
tp: '5.5',
ft: '2.4',
rpg: '1.7',
apg: '2.0',
bpg: '.822',
spg: '1.5',
ppg: '6.5'
},
{
gp: '57',
gs: '56',
mpg: '34.6',
fg: '.509',
tp: '3.1',
ft: '1.8',
rpg: '1.0',
apg: '1.2',
bpg: '.775',
spg: '1.0',
ppg: '4.7'
}
]
下面是我如何将careerStats对象数组放置在玩家数组中的
玩家:
player.push(
{
name: "",
image: "",
position: "",
description: "",
dob: "",
hometown: "",
country: "",
height_feet: "",
height_inches: "",
weight: "",
season: careerStats
});
这不会返回任何类型的错误;但是,当我将播放器登录到控制台时,会显示以下内容:
[
{
name: '',
image: '',
position: '',
description: '',
dob: '',
hometown: '',
country: '',
height_feet: '',
height_inches: '',
weight: '',
season: [ [Object], [Object], [Object] ]
}
]
由于我知道数据在careerStats数组中时是正常的,这就引出了两个问题:
提前感谢您的帮助 在节点中写入JSON文件,然后可能使用节点文件系统
player.JSON的目录中创建一个JSON文件,其中player数据存储为JSON
fs.writeFileSync('player.json', playerJSON);
要在节点中写入JSON文件,可能需要使用节点文件系统
player.JSON的目录中创建一个JSON文件,其中player数据存储为JSON
fs.writeFileSync('player.json', playerJSON);
console.log()
最多只能显示对象结构的两个级别,其他任何内容都会像这样“折叠”
您可以使用:
或:
或:
但是,请注意JSON.stringify()
有一些限制,例如无法处理循环引用或根本不显示函数
我会选择console.dir()
,因为它已经在内部使用了util.inspect
,如文档中所述:
在obj
上使用util.inspect()
,并将生成的字符串打印到stdout
。j
console.log()
最多只能显示对象结构的两个级别,其他任何内容都会像这样“折叠”
您可以使用:
或:
或:
但是,请注意JSON.stringify()
有一些限制,例如无法处理循环引用或根本不显示函数
我会选择console.dir()
,因为它已经在内部使用了util.inspect
,如文档中所述:
在obj
上使用util.inspect()
,并将生成的字符串打印到stdout
。j
您可以单击控制台中的对象来展开它们,尝试
console.log(JSON.stringify(player))
您应该可以看到您期望的结果。console.log
在打印通用类型字符串之前,只会递归到数组或对象中这么多级别。这样,当您只想查看一些顶级字段时,就可以打印具有深层嵌套数据的复杂对象,而不会占用数千行。@Barmar-谢谢您提供的信息,我不知道他只限于console.log@Abion47-和你一样,我今天早上学到了一些有价值的东西。你可以点击控制台中的对象来展开它们,试试console.log(JSON.stringify(player))
你应该会看到你期望的结果。console.log
在打印泛型字符串之前只会递归到数组或对象中很多级别。这样,当您只想查看一些顶级字段时,就可以打印具有深层嵌套数据的复杂对象,而不会占用数千行。@Barmar-谢谢您提供的信息,我不知道他只限于console.log@阿比翁47-你也一样,今天早上我学到了一些有价值的东西。
fs.writeFileSync('player.json', playerJSON);
console.dir(player, { depth: null });
const util = require('util')
console.log(util.inspect(player, { depth: null });
console.log(JSON.stringify(player, null, 2));