【问题标题】:Concatenate string on a loop Javascript在循环Javascript上连接字符串
【发布时间】:2015-07-27 00:49:41
【问题描述】:

我有一个循环哈希数据。

var rec = { };
for (var b = 0; b < 2;b++) {
    rec['id'+b] = b</p>
}

然后我有一个创建模板的 javascript。

var template ='<table><tr>'
template +='<th class="id"><b>ID</b></th>'
template +='</tr>'
template +='<% for(var i = 0; i < 2; i++){ %>' 
template +='<tr><td><%= id+i %></td></tr>'
template +='<% } %>'
template +='</table>';

有人可以帮我如何连接我的字符串。以及如何使用 在 JavaScript 中。我尝试在这里复制我的代码。但我得到错误

谢谢

【问题讨论】:

  • 我有一个循环哈希数据。 ` var rec = { }; ` ` for (var b = 0; b ` } ` 然后我有一个创建模板的javascript。 var template ='' template +='' template +='' template +='' 模板 +='' 模板 +='' 模板 +='
    ID
    ';我尝试这种方法,但它不起作用。有人帮我解决我的问题。
  • 我有一个循环哈希数据。变种记录 = {}; for (var b = 0; b ' template +='ID' template +='' template +='' 模板 +='' 模板 +='' 模板 +='';我尝试这种方法,但它不起作用。有人帮我解决我的问题。
  • 请编辑您的问题并将代码放在那里,而不是在 cmets 中!使用{} 按钮格式化代码。
  • 在每行末尾加上;分号
  • @Xufox 我可以编辑,总是出错

标签: javascript jquery arrays multidimensional-array hash


【解决方案1】:

试试这个

        var s = "";
        for(var i=0;i<2;i++){
            s+="what you want to add";
        }

对于你的情况,你可以这样做

        var template ='<table><tr>';
        template +='<th class="id"><b>ID</b></th>';
        template +='</tr>';
        var tempConcat = "";
        for(var i = 0; i < 2; i++){
        tempConcat += '<tr><td>'+(id+i)+'</td></tr>';
        }

        template +=tempConcat +'</table>';

【讨论】:

  • 我有一个哈希对象;
  • var oRec = {}; ;for(var i=0;i
  • var template ='' template +='' template +=' tr>' 模板 +='' 模板 +='' 模板 +='' 模板 +='' 模板 +='' 模板 +='
    ID
    ';当我尝试使用 打印出值时。它不起作用。但是当我硬编码它。它显示
【解决方案2】:

要在 javascript 中连接,您需要使用加法符号 (+)。

例子:

var a = '你好', b = '我的兄弟';

console.log(a + b);

将导致

你好,我的兄弟

【讨论】:

    【解决方案3】:

    不确定这是否回答了您的问题,但您对 += 的使用对于 concat 来说是可以的。稍微修改一下你的 for 循环。

    HTML

    <div id="temp"></div>
    

    JS

    var rec = { };
    for (var b = 0; b < 2;b++) {
        rec['id'+b] = b;
    }
    
    var template ='<table>' + 
                    '<tr><th class="id"><b>ID</b></th></tr>';
    for (var i in rec) {
        template += '<tr><td>' + i + '</td><td>' + rec[i] + '</td></tr>';
    }    
    template +='</table>';
    
    document.getElementById('temp').innerHTML = template;
    

    JSFiddle here

    【讨论】:

    • 我的问题是这一行。它不会连接并打印出来
    猜你喜欢
    • 2016-12-15
    • 2017-12-18
    • 2015-12-16
    • 2013-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-20
    • 2021-11-13
    相关资源
    最近更新 更多