如何在具有多个变量的模板文字中使用三元运算符

Edw*_*win 6 javascript string

我有一个 JSON 文件,我想从中获取值并显示。我尝试使用三元运算符,但由于我有多个变量,因此似乎无法获得我想要的输出。这是我尝试过的:

//If there's a word, display its character / reading. Otherwise, just display the reading
return `${json.data[0].word} ? ${json.data[0].word (${json.data[0].reading}) : ${json.data[0].reading}`


Run Code Online (Sandbox Code Playgroud)

这仅输出实际字符串,但如果 json.data[0].word 未定义,则输出未定义。我只想在这种情况下显示读数。

And*_*edo 6

占位符在字符串模板中不能递归工作。写一个更清晰的代码。

如果您坚持使用紧凑的三进制代码:

json.data[0].word
  ? `${json.data[0].word} (${json.data[0].reading})`
  : `${json.data[0].reading}`
Run Code Online (Sandbox Code Playgroud)

您的外部占位符是不必要的。