JavaScript 优雅简单的拼接字符串

前言

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

JS 原生字符串拼接

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

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起来:

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进行组装:

 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的拼接现在一般用模板,这里记录以下

时间: 2024-10-28 22:49:52

JavaScript 优雅简单的拼接字符串的相关文章

knockoutJS学习笔记01:从拼接字符串到编写模板引擎

开篇 关于knockout的文章,园里已经有很多大神写过了,而且都写得很好.其实knockout学习起来还是很容易的,看看官网的demo和园里的文章,练习练习就可以上手了(仅限使用,不包含研究源码).之所以想写这个系列,主要是想记录自己的学习和应用过程,也希望能给初学者一点帮助. 既然是学习过程就一步一步来,从最开始的解决方案,到优化过程,到最后的实现方案.有了思考和对比,才会更加明白这个东西有什么好处,为什么使用它.什么情况要使用它.ok, 官网学习链接为?:knockoutJS 准备例子 过

JavaScript基础--简单功能的计算器(十一)

1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="

浅谈javascript和java中的字符串

javascript字符串操作 一.字符串的创建 创建一个字符串有几种方法. 1.最简单的是用引号将一组字符包含起来  var myStr = "Hello, String!";// 在js中单双引号没有区别 2.可使用如下语句:var myStr1 = new String("Hello, String!"); 1 2 console.log(typeof myStr);//"string" console.log(typeof myStr1)

前端--javaScript之简单介绍

一.javaScript(以下简称js)的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEase.(客户端执行的语言) Netscape(网景)接收Nombas的理念,(Brendan Eich)在其Netscape Navigator 2.0产品中开发出一套livescript的脚本语言.Sun和Netscape共同完成.后改名叫Javascript 微软随后模仿在其IE3.0的产品中搭载了一个Jav

拼接字符串,生成tree格式的JSON数组

之前做的执法文书的工作,现在需要从C#版本移植到网页版,从Thrift接口获取数据,加载到对应的控件中 之前用的easyui的Tree插件,通过<ul><li><span></span></li></ul>标签的方式生成node树,条理清晰,虽然麻烦点,但是用循环写几行代码就能搞定,但是,在Ajax的函数里面,tree的样式加载不上,显示的格式就是元素自带的含义,<ul>和<li>,无法点击,下面的工作也就无法

javascript 对象简单解释

在javascript 中 数组是对象,函数是对象,正则表达式是对象,当然对象自然也是对象. 对象是属性的容器,每个属性都有名字和值,名字可以是包括空字符串在内的任意字符串,属性值是除undefined值之外的任何值. 若在对象中检索一个并不存在的成员变量值,将返回一个undefined值. 使用 || 运算符填充默认值: var middel = stooge["middle-name"] || "{none}" 尝试检索一个undefined值可能倒是typeE

JavaScript实现简单的前端上传图片预览

JavaScript实现简单的前端上传图片预览 <div class="file_upload"> <div id="portrait"></div> <input type="file" name="" id="" onchange="showPerview(this)"> </div> <script type=&qu

vue语法之拼接字符串

先来一行代码: <div class="swiper-slide" v-for="item in message"> <img v-bind:src="['xxx(需要拼接的字符串)'+item.picurl]" alt="" width="100%" height="245" /> </div> 如代码所示,只需要在数组语法中拼接字符串即可. ***

必须知道的sql编写技巧。多条件查询不拼接字符串&#183;的写法

在做项目中,我们经常遇到复杂的查询方法,要根据用户的输入,判断某个参数是否合法,合法的话才能当作过滤条件,我们通常的做法是把查询SQL赋值给一个字符串变量,然后根据判断条件动态的拼接where条件进行查询.下面来简单说一下写SQL中遇到的问题和解决办法.  一.不确定字段名,而产生的SQL字符串拼接 比如,有个公司要做一个系统,要支持多语言,这个时候我们就要将语音信息存储在数据库中.然后,根据客户选择查询对应的语言字段,进行显示.下面我们来模拟这个场景,打开SQL Server,新建SysLan