簡體   English   中英

如何用字符串替換未定義的值

[英]How to replace undefined value with a string

我嘗試使用此代碼:

if((data.memberData.workStreak || 0) >= 5){
            won+=400;
            embed.addField(message.language.get("WORK_CLAIMED_HEADINGS")[0], message.language.get("WORK_CLAIMED_SALARY", won))
            .addField(message.language.get("WORK_CLAIMED_HEADINGS")[1], message.language.get("WORK_AWARD"));
            data.memberData.workStreak = 0;
        } else {
            for(let i = 0; i < award.length; i++){
                if (typeof i === 'undefined') {
                   return '<:b_:682865394637078531>';
                }
                if(data.memberData.workStreak > i){
                    let letter = Discord.Util.parseEmoji(award[i]).name.split("_")[1];
                    award[i] = ":regional_indicator_"+letter+":";
                }
            }

但它完全沒有任何作用。 圖片

有什么幫助嗎?

您可以簡單地使用OR運算符並打印字符串而不是 undefined。 在下面的語句中,如果a undefined那么它將在a而不是undefined存儲空字符串。

a = a || ''

用下面的行替換你的行:

let letter =Discord.Util.parseEmoji(award[i]).name;
OR
let letter =Discord.Util.parseEmoji(award[i]);

請在下面找到工作片段:

 const a = undefined; console.log(a); console.log(a || '');

我不確切知道,這個小代碼片段的目的是做什么..但這可以幫助你嗎?

let letter = Discord.Util.parseEmoji(award[i]).name.split("_")[1];
if (letter == undefined) {
   return '<:b_:682865394637078531>';
}
if(data.memberData.workStreak > i){
    award[i] = ":regional_indicator_"+letter+":";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM