Console.log() 记录我 [object,object] 的东西

Console.log() logs me [object,object] something

好的,你好,所以我有一个异步的东西和 returns 一个承诺,基本上我使用了 .then 方法或任何它被调用的方法。虽然当我 console.log() 我想要记录的变量 + 自定义字符串 (console.log(data+"hey");) 当我单独执行变量时它会给出日志 [object,object]只有数据,它给了我我想要的。为什么会这样?顺便说一句,这是我的代码。

(此代码获取我在 Steam 库存中的物品。):

var steamUserInventory = require('steam-user-inventory');

var botID64 = "76561198026027024";
steamUserInventory(botID64, '753/6').then(data => console.log(data));

这很完美(因为 console.log 中的数据是单独的) 此外,当我尝试将 "data" 放入 json 文件中时,如下所示:

        steamUserInventory(Bot, '753/6').then(data => 
        fs.writeFile("inventories/me.json", data, function(err) {
            if(err) {
                console.log("Error saving data to json file: " + err);
                return;
            }
            console.log("Bot inventory has been updated!");
        }));

它给了我同样好的旧 [object, object]..更多行

在 json 文件中。它没有给我想要的东西。

(顺便说一句,console.log(数据)给了我):

 { id: '538277908',
amount: '1',
pos: 126,
name: 'Docking',
appid: '753',                                                                                                           classid: '230924010',
instanceid: '2108281766',                                                                                               tradable: 0,
marketable: 0,                                                                                                          marketTradableRestriction: '7',
link: 'http://cdn.akamai.steamstatic.com/steamcommunity/public/images/items/2870/5059522765a958a85cabe31988ccc928b8c36715.jpg',
image: 'http://steamcommunity-a.akamaihd.net/economy/image/U8721VM9p9C2v1o6cKJ4qEnGqnE7IoTQgZI-VTdwyTBeimAcIoxXpgK8bPeslY9pPJIvB5IWW2-452kaM8heLSRgleGBrrJJ3upnaKks0uKrDFhw5OJPBT3mTBHXgjSUcef3xwM2PZYmJ0fxw5kZ79tJA8F0arJkgNs',
category: null,                                                                                                         type: null,
exterior: null,                                                                                                         quality:

这是我想要存储在 json 文件中的内容。

感谢您的宝贵时间。

您的 data 变量不是字符串,而是一个对象。在将对象写入文件之前,您需要使用 JSON.stringify() 将对象转换为 JSON 字符串。否则,您只需编写对象的字符串表示形式,即 [object Object].

对于您的情况,您可以在写入文件时进行转换:

fs.writeFile("inventories/me.json", JSON.stringify(data), function(err) {