[英]jquery/javascript function within string concatenation
i want to concatenation string having some calculated values in between, so i tried the code below: 我想串联两个之间有一些计算值的字符串,所以我尝试了下面的代码:
var html = '<tr>' +
function () {
var tds = ''
array.each(function (i, ele) { tds += '<td>' + i + '</td>' });
return tds;
} +
'</tr>';
But its not working. 但是它不起作用。 The function i used in concatenation as treating like a string itself !.
我在串联中使用的函数就像对待字符串本身一样! Is there any way to do that ?
有什么办法吗? Thank you
谢谢
You need to use an immediately-executing function: 您需要使用立即执行的功能:
var html = '<tr>' +
(function () {
var tds = ''
array.each(function (i, ele) { tds += '<td>' + i + '</td>' });
return tds;
})() +
'</tr>';
But you don't need this function, you can use existing functions to do what you want: 但是您不需要此功能,可以使用现有功能执行所需的操作:
var html = '<tr>' + array.map(function(i, ele) {
return '<td>' + i + '</td>';
}).join() +
'</tr>';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.