javascript - 如何用字符串替换未定义的值
问题描述
我尝试使用此代码:
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。在下面的语句中 if a
is undefined
then 它将存储空字符串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 || '');
推荐阅读
- angular - 在 FormArray 中添加嵌套的 Reactive FormArray - Angular 6
- python - 如何有效地找到numpy矩阵中一行最左边的非空值的索引列?
- logging - Google Scripts 神秘的执行时间和记录器行为
- ios - iOS/Objective-C:从 sharedInstance 调用 AlertViewController
- dom - Vue/Vuex/GSAP-Animation:添加 DOM 元素进行存储
- react-native - 在 IOS 和 Android 上使用 Flutter/React Native 播放 DRM 内容
- python - 如何从文本文件中写入和读取变量
- react-native - 无法读取未定义的属性“openPicker”
- python - 抓取隐藏元素
- javascript - decodeUri 不适用于 res.json express