Javascript中拼接大量字符串的方法

时间:2021-05-26

在php、python中都有heredoc方式的字符串定义方法:

php:
复制代码 代码如下:
$sql=<<<EOD
select *
from pages
where pagename='$pn'
EOD;

python:
复制代码 代码如下:
print """
This is an example of a string in the heredoc syntax.
This text can span multiple lines
"""

js拼接大量字符串没个heredoc风格的操作符是比较繁琐的:

拼接方式一:
复制代码 代码如下:
var str = "\
Here is line one \
And line two \
Finally, line three! \
";

alert(str);

拼接方式二:
复制代码 代码如下:
var __template =
'<tr>'+
'<td>#salarySN#</td>'+
'<td>#name#</td>'+
'<td>#TDR_NAME#</td>'+
'<td>#TSD_NAME#</td>'+
'<td>#WORK_STATUS#</td>'+
'<td>#isleader_display#</td>'+
'<td>'
+'<a href="javascript:void(-1)">设置角色</a>'
+'</td></tr>';

JS字符串需要打破原字符串风格,每行处理,这点有点让人受不了。

给个解决方案:
复制代码 代码如下:
function aHereDoc() {}

function hereDoc(func) {
return func.toString().split(/\n/).slice(1, -1).join('\n');
}
console.log(hereDoc(aHereDoc));

利用func.toString()获取需要批量处理的字符串,利用split(/\n/).slice(1, -1)去掉首尾两行函数定义的代码,重新组装即可。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章