天道酬勤

JavaScript 优雅简单的拼接字符串

前言

最近维护一个老系统,里面有大量js拼接字符串的代码,这里总计一下js拼接字符串

JS 原生字符串拼接

JavaScript里面的字符串可以直接用 + 来拼接

1
return "<a style='text-decoration:underline' onClick='" + valsAr[1] + " return false;" + "' data-rowId='" + row_id + "' href='javascript:;' title='" + valsAr[0] + "'>" + valsAr[0] + "</a> ";

 以上就是拼接一个带js事件的a标签,可以看出来里面混合了单引号和双引号,用起来相对的费劲。

因为单引号和双引号结合在一起,所以可以用js的array进行分开操作,最后在join起来:

1
2
3
4
5
6
7
8
9
10
data.push("<a style='text-decoration:underline' onClick='");
data.push(valsAr[1]);
data.push(' return false;');
data.push("' data-rowId='");
data.push(row_id);
data.push("' href='javascript:;' title='");
data.push(valsAr[0]);
data.push("'>");
data.push(valsAr[0]);
data.push( "</a> ");

 这其实和上面的方法差不都,只是用数组将要用+的隔开而已

JS模板

以上都是比较老的解决方案了,用起来也费劲,现在都是用js template进行组装:

1
2
3
4
5
6
7
var strTem = "<a style='text-decoration:underline;color:#color#' onClick='#click# return false;' data-rowId='#rowId#' href='javascript:;' title='#title#' >#title#</a> ";
var values = {};
values["color"] = color;
values["click"] = valsAr[1];
values["title"] = valsAr[0];
values["rowId"] = row_id;
template(strTem, values)

 总结

js的拼接现在一般用模板,这里记录以下

posted @   JulyLuo  阅读(13394)  评论(1编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示