gpt4 book ai didi

javascript - 字符串文字中的三元

转载 作者:行者123 更新时间:2023-11-30 07:19:19 25 4
gpt4 key购买 nike

一直在尝试在模板字符串中添加条件。我做不到。我有两个字符串 t1 和 t2,当 t2 未定义或为空时只显示 t1,当 t2 存在时将 t2 附加到括号内和 t1

let t1= "hey";
let t2 = "there";
//need the output something like hey(there) when there t2 is present. when it is null or undefined or empty just show hey

//Have tried the below but it is not working
console.log(`${t2} ${t1} ? ${t1}(${t2}): ${t1}`)

最佳答案

三元应在 ${} 表达式内部完成,如下所示:

let t1 = "hey";
let t2 = "there";
console.log(`${t1}${t2 ? `(${t2})` : ''}`);

以上代码解释如下:

  1. 由于您已经指定无论您是否定义了 t2 都应该指定前缀“hey”,因此无需将其包含在三元表达式。
  2. 代码的下一部分是内联的三元运算符,用于检查 t2 是否为 truthy .

    • 如果为真,则执行三元运算符的第一部分。换句话说,三元运算符将返回 (${t2})。由于这是另一个模板文字,因此将通过将 t2 变量替换到模板表达式中来对其进行评估。
    • 如果不为真,则执行三元运算符的第二部分,这是一个空字符串。

请注意,您可以在模板文字中包含模板文字。查看Template Literals documentation在 MDN 上获取更多信息。

关于javascript - 字符串文字中的三元,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59425120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com