【问题标题】:Appending variables in string definition在字符串定义中附加变量
【发布时间】:2018-09-28 08:04:12
【问题描述】:

我正在尝试将数据表格式化为字符串并将其返回到页面。我有以下内容,但恐怕这不是定义我的变量的有效方法。

var tableOutput = ' <
  table class = \"child-info\" cellpadding=\"5\" cellspacing=\"0\" border=\"0\" style=\"padding-left:50px;\">'+
'<tr>' +
'<td>Level:</td>' +
'<td>' + d.deg_codes[0] + '</td>' +
  '</tr>' +
  '<tr>' +
  '<td>Level:</td>' +
  '<td>' + d.deg_codes[1] + '</td>' +
  '</tr>' +
  '</table>';
return tableOutput;

但是,当我自己返回整个定义语句时,它会起作用。不幸的是,我需要它作为一个变量来修改它。有没有更好的方法来定义这个?还是我必须做大量的追加?

编辑

它的工作原理是:

      var tableOutput = `
      <table class = "child-info" cellpadding="5" cellspacing="0" border="0" style="padding-left:50px;">
          <tr>
              <td>Level USF Tampa:</td>
              <td>${d.deg_codes[0]}</td>
          </tr>
          <tr>
              <td>Level USF Tampa:</td>
              <td>${d.deg_codes[1]}</td>
          </tr>
      </table>`;

【问题讨论】:

    标签: javascript


    【解决方案1】:

    使用javascripttemplate strings

    `string text line 1
     string text line 2`
    

    同时删除不必要的引号 '+ 以进行连接

    function showTable() {
      const d = {
        deg_codes: [3434, 4444]
      };
    
      var tableOutput = `<table class = "child-info" cellpadding="5" cellspacing="0" border="0" style="padding-left:50px;">
              <tr>
                  <td>Level:</td>
                  <td>${d.deg_codes[0]}</td>
              </tr>
              <tr>
                  <td>Level:</td>
                  <td>${d.deg_codes[0]}</td>
              </tr>
          </table>`;
    
      return tableOutput;
    }
    
    document.write(showTable());

    【讨论】:

    • 您的链接是波兰语。由于我们在英文网站上,因此可能应该将其更改为英文。
    • @chevybow 完成,我在更改语言之前不小心复制了。
    • 您可以取出 URL 中的语言字符串,MDN 将尝试选择适合语言的版本。我总是将 MDN url 粘贴为,例如,https://developer.mozilla.org/docs/Web/JavaScript/Reference/Template_literals
    猜你喜欢
    • 2012-09-09
    • 1970-01-01
    • 2011-10-27
    • 2016-07-14
    • 1970-01-01
    • 1970-01-01
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多