如何检测数组中未定义的变量?

How do I detect undefined variables within an array?

我目前正在做一个项目,其中显示了 wpm 的一些记录。它目前有效,因此如果数组中的任何元素未定义,它会将它们设置为 "" 以便在输出时不显示它们。我的版本又笨重又太大,我想知道如何通过函数将其缩小。

代码:

var fifteenSecond = `Your 15s highscore: ${maxesTime[15]}wpm`
var thirtySecond = `Your 30s highscore: ${maxesTime[30]}wpm`
var sixtySecond = `Your 60s highscore: ${maxesTime[60]}wpm`

  if (maxesTime[15] === undefined) {
    fifteenSecond = ""
  } else if (maxesTime[30] === undefined) {
    thirtySecond = ""
  } else if (maxesTime[60] === undefined) {
    sixtySecond = ""
  }

console.log(`${sixtySecond}}\n${thirtySecond}\n${fifteenSecond}`);

提前致谢,

非常感谢任何和每一个答案

您可以简单地使用 for 检查 maxesTime 中的每个 属性 i。这样,如果您添加新的“最大时间”(例如“45”),则无需更改代码。

let maxesTime = {
  '15': 100,
  '30': null,
  '45': undefined,
  '60': 400
};
for (let i in maxesTime) {
  if (maxesTime[i]) {
    console.log(`Your ${i}s highscore: ${maxesTime[i]}wpm`);
  }
}

这是我的方法:

function getRecord(seconds, maxesTime) {
  return maxesTime[seconds] ? 
    `Your ${seconds}s highscore: ${maxesTime[seconds]}wpm`
    : '';
}