我已经生成了ID,但我需要帮助将该ID保存为用户名 这是代码:
function makeId(){
var text = " ";
var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz023456789";
for (var i = 0; i < 5; i++)
text += possible.charAt(Math.floor(Math.random() * possible.length));
return text;
}
它生成一个包含其中一些字符的ID,它只返回ID,我想用它来解决我的不和谐服务器上的用户
答案 0 :(得分:0)
user.id是只读的。如果你能改变用户ID,你将能够造成严重破坏。
如果您只想要一个不同的ID来引用用户,那么您可以创建一个字典,其中key = random id和value = user对象。但我不知道为什么你会这么想。
答案 1 :(得分:0)
如果您不想使用提及,请尝试使用user.mention
或user.username + user.discriminator
。像这样:
var dictionary = new Object();
function store(user) {
dictionary[user.username + user.discriminator] = user;
}
&#13;
如果您对base64没问题,可以使用:
var dictionary = new Object();
function addID(user){
dictionary[Buffer.from(user.id.toString(16), 'hex').toString('base64')] = user;
}
&#13;
如果base32漂浮在你的船上:
var dictionary = new Object();
function addID(user){
dictionary[user.id.toString(32)] = user;
}
&#13;
如果您只是想生成自己的,那么随机生成它将无效,因为可能会为多个用户分配相同的ID。如果您只想让代码将生成的ID保存在数据库中,请尝试:
var dictionary = new Object();
function addID(user, myID){
dictionary[myID] = user;
}
function retrieveID(myID) {
return dictionary[myID];
}
&#13;
如果您尝试将其保存在文件中,请使用 JSON 。
我希望我能帮忙!