Javascript My module.exports返回为[对象]

Javascript My module.exports返回为[对象],javascript,node.js,api,axios,export,Javascript,Node.js,Api,Axios,Export,我使用API来获取我需要的一些信息 let bodyapi = await axios.get(`www.example.com`) 然后我导出我需要的信息,如下所示: const number = bodyapi.data.slice(-11); module.exports = number 然后我像往常一样在实际文件中使用const number=require./myapp.js运行它。 但问题是,当我读取它时,它返回[对象] 控制台结果: Your ID: [object Obj

我使用API来获取我需要的一些信息

let bodyapi = await axios.get(`www.example.com`)
然后我导出我需要的信息,如下所示:

const number = bodyapi.data.slice(-11);

module.exports = number
然后我像往常一样在实际文件中使用const number=require./myapp.js运行它。 但问题是,当我读取它时,它返回[对象]

控制台结果:

Your ID: [object Object]
我的问题是:我如何修复它,让它读取我需要它读取的内容?bodyapi被制作成一个异步函数。我使用Axios读取api


如果你需要更多的信息,请在评论中告诉我,这样我就可以编辑这篇文章。谢谢你的时间

问题在于控制台日志。您正在串接数字对象: 请尝试以下操作:

const number = require('./myapp.js')
sleep(5000) // It's a timeout function I've set, ignore it, it's just so I don't run the code too fast since it uses API''
console.log("Your ID: ", number) //

问题在于控制台日志。您正在串接数字对象: 请尝试以下操作:

const number = require('./myapp.js')
sleep(5000) // It's a timeout function I've set, ignore it, it's just so I don't run the code too fast since it uses API''
console.log("Your ID: ", number) //

我认为这不是从异步函数导出响应并将其用于睡眠的正确方法。你应该考虑导出这样的函数

async function getResponse() {

  let bodyapi = await axios.get(`www.example.com`);
  const number = bodyapi.data.slice(-11);
  return number;
}

module.exports = getResponse;
const getResponse = require('./myapp.js');

getResponse()
  .then(number => console.log(number));

那么当你想用它的时候,你可以这样用它

async function getResponse() {

  let bodyapi = await axios.get(`www.example.com`);
  const number = bodyapi.data.slice(-11);
  return number;
}

module.exports = getResponse;
const getResponse = require('./myapp.js');

getResponse()
  .then(number => console.log(number));

或者使用异步/等待


const getResponse = require('./myapp.js');

(async() => {
   const number = await getResponse();
   console.log(number);
})();

将其日志记录视为[object]。如果您尝试用字符串连接对象,您将看到该行为

我认为这不是从异步函数导出响应并将其用于睡眠的正确方法。你应该考虑导出这样的函数

async function getResponse() {

  let bodyapi = await axios.get(`www.example.com`);
  const number = bodyapi.data.slice(-11);
  return number;
}

module.exports = getResponse;
const getResponse = require('./myapp.js');

getResponse()
  .then(number => console.log(number));

那么当你想用它的时候,你可以这样用它

async function getResponse() {

  let bodyapi = await axios.get(`www.example.com`);
  const number = bodyapi.data.slice(-11);
  return number;
}

module.exports = getResponse;
const getResponse = require('./myapp.js');

getResponse()
  .then(number => console.log(number));

或者使用异步/等待


const getResponse = require('./myapp.js');

(async() => {
   const number = await getResponse();
   console.log(number);
})();

将其日志记录视为[object]。如果您尝试用字符串连接对象,您将看到该行为

在导出之前,请确保console.lognumber和它看起来像您想要的或不想要的。在导出之前,请确保console.lognumber和它看起来像您想要的或不想要的。您好。谢谢你的回复。现在我得到{}作为一个值。知道为什么吗?@Lmao123你的目标是空的。您可以通过myapp.js模块中的控制台日志进行检查。好的,谢谢。我会检查一下,看看有什么问题。谢谢你的回复。现在我得到{}作为一个值。知道为什么吗?@Lmao123你的目标是空的。您可以通过myapp.js模块中的控制台日志进行检查。好的,谢谢。我会检查一下,看看有什么问题。我都用了。然后,我得到的数字是未定义的。使用async我会出错,因为我已经在我的主脚本上为Puppeter使用了async。我都使用了。然后,我得到了未定义的数字。使用async会出现错误,因为我已经在主脚本中使用了Puppeter的async。