为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Javascript 中使用模板文字进行连接?

如何在 Javascript 中使用模板文字进行连接?

尚方宝剑之说 2023-06-15 16:39:21
我正在尝试在代码中使用模板文字,但它不起作用。let myData =         (myNewData[0].checked ? Enum.ONE.concat(',') : '') +         (myNewData[1].checked ? Enum.TWO.concat(',') : '') +         (myNewData[2].checked ? Enum.THREE : '');     myData = myData.replace(/,\s*$/, '');我想检查是否检查了 first 或 second 或 third 然后我应该得到用逗号分隔的结果 - One,Two,Three。一切正常。但是我正在优化代码并想用模板文字删除 concat,我该怎么做?我也试过这个 -let myData = (myNewData[0].checked ? `$(Enum.ONE) , $(myNewData[1].checked) ? `Enum.TWO , `(myNewData[2].checked ? Enum.THREE)     myData = myData.replace(/,\s*$/, "");我如何优化此代码,因为我在使用模板文字(反勾)时遇到错误。我是使用模板文字的新手,有人可以帮我吗?
查看完整描述

3 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

由于 中的每个项目都Enum与数组中的一个元素相关联myNewData,请考虑将其更改为字符串数组而不是字符串对象。myNewData然后你可以通过是否检查相同索引来过滤数组,然后用逗号连接:

const TEXTS = ['One', 'Two', 'Three'];
const output = TEXTS
  .filter((_, i) => myNewData[i].checked)
  .join(',');


查看完整回答
反对 回复 2023-06-15
?
ITMISS

TA贡献1871条经验 获得超8个赞

我认为这是在 Javascript 中使用模板文字进行连接的方法。

const a = `${myNewData[0].checked ? Enum.ONE: ''}${myNewData[1].checked ? `, ${Enum.TWO}`: ''}${myNewData[2].checked ? `, ${Enum.THREE}`: ''}`

另一方面,有更多“干净”的方法可以做到这一点......


查看完整回答
反对 回复 2023-06-15
?
Qyouu

TA贡献1786条经验 获得超11个赞

您应该在模板文字中使用大括号 ${ } 而不是圆括号 $( )



查看完整回答
反对 回复 2023-06-15
  • 3 回答
  • 0 关注
  • 85 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信