javascript - 为什么我的函数总是返回一个未定义的对象?Java 脚本 / 节点 JS
问题描述
我正在使用 discord.js 开发一个不和谐的机器人,但我无法弄清楚为什么我的函数总是返回undefined。我有一个读取 JSON 文件并将其转换为对象的函数,然后应该返回该对象,以便我可以在其他函数中使用它。
function getPlayer(message) {
let filename = message.author.id + '.json';
let path = './Database/';
if(fs.existsSync(path + filename)) {
console.log('File Found');
fs.readFile(path + filename , 'utf-8', (err,content) => {
if(err) {
console.log(err)
} else {
let player = JSON.parse(content);
return player;
}
})
} else {
console.log('File not found')
}}
在这个方法中,我可以毫无问题地访问属性,但是一旦我使用 getPlayer() 方法在另一个方法中获取播放器对象,我总是会收到一个错误,即未定义播放器。
function getELO (message) {
let p = getPlayer(message);
console.log(p.name) }
解决方案
推荐阅读
- python - 使用 python 通过 search Endpoint 从 spotify API 获取跟踪
- android - Firestore whereEqualTo 对象
- mongodb - 在 Spring Boot mongo 存储库操作中将未知枚举值强制转换为默认枚举
- android - 在 Android 上使用 Tinylog 编写日志
- html - vb.net web浏览器setAttribute获取错误“对象引用未设置为对象的实例”
- hibernate - @ElementCollection 的 JPA 延迟加载
- python - 如何使用 Python 从 Google Doc 中提取或读取图像
- angular-reactive-forms - 具有所需验证器的角度嵌套反应形式
- java - `android.os.Handler.postDelayed` 会失败吗?
- django - 在视图中使用部分 Django URL