javascript - 如何在驼峰式键名之间添加空格?

标签 javascript html json mailgun nodemailer

我创建了一个 node.js 网站,潜在员工可以通过该网站申请工作。当他们提交申请表时,我使用 nodemailer 和 mailgun 将包含申请人信息的电子邮件发送给招聘经理。它发送带有键值对的新申请人的对象,但我想在包含多个单词的键之间放置一个空格,并将它们设为大写,以便更赏心悦目。我该怎么做?

这是一个带有输出键值对的示例电子邮件

enter image description here

这是发送邮件的代码

function sendAppliedEmail(applicant) {


let html = '<img src="" alt="logo">';
  html += '<h2 style="color: black">New Applicant</h2>'
  html += '<ul>';

  Object.entries(applicant).forEach(([key, value]) => {
    html += `<li>${key}: ${value}</li>`;
  });

  html += '</ul>';

最佳答案

replace(/([a-z])([A-Z])/g, `$1 $2`)


您可以替换所有 lowerUpper 匹配项。

每当一个小写字符后跟一个大写字符时,正则表达式匹配并用它们本身和一个空格替换这两个字符。

function sendAppliedEmail(applicant) {


let html = '<img src="" alt="logo">';
  html += '<h2 style="color: black">New Applicant</h2>'
  html += '<ul>';

  Object.entries(applicant).forEach(([key, value]) => {
    html += `<li>${key.replace(/([a-z])([A-Z])/g, `$1 $2`)}: ${value}</li>`;
  });

  html += '</ul>';


如果键应该是完整的大写字母,您可以将 toUpperCase() 方法链接到 replace 方法。

html += `<li>${key.replace(/([a-z])([A-Z])/g, `$1 $2`).toUpperCase()}: ${value}</li>`;

关于javascript - 如何在驼峰式键名之间添加空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55403603/

相关文章:

javascript - 如何将 JSON 对象放入 setQueryParameter 参数中?

javascript - 在 IE 上使用 javascript 添加 img 标签时 onmouseover 不起作用

php - Javascript onclick 与 getElementById 不起作用

javascript - jQuery 如何在单击时切换引导工具提示文本

php - 使用 PHP 将 txt 数据文件转换为结构化 JSON

php - Mysql aruba Json类型不存在

javascript - 如果页面刷新,则重置 XMPP 连接

javascript - sequelize v4 复制的密码验证失败

html - 无法使 flex 显示工作

php - 如何更改 PHP 中第一个回显结果的类?