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


Posted in Javascript onFebruary 05, 2015

在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() {/*

Hello, World!

I am a JavaScript here document.

Use the 'hereDoc' function to extract me.

*/}
function hereDoc(func) {

return func.toString().split(/\n/).slice(1, -1).join('\n');

}

console.log(hereDoc(aHereDoc));

利用func.toString()获取需要批量处理的字符串,利用split(/\n/).slice(1, -1)去掉首尾两行函数定义的代码,重新组装即可。
Javascript 相关文章推荐
基于jquery的tab切换 js原理
Apr 01 Javascript
Jquery多选框互相内容交换的实例代码
Jul 04 Javascript
JS实现的4种数字千位符格式化方法分享
Mar 02 Javascript
jQuery oLoader实现的加载图片和页面效果
Mar 14 Javascript
JavaScript实现点击单元格改变背景色的方法
Feb 12 Javascript
js实现非常棒的弹出div
Oct 06 Javascript
JavaScript中${pageContext.request.contextPath}取值问题及解决方案
Dec 08 Javascript
vue.js数据绑定操作详解
Apr 23 Javascript
微信小程序实现折叠展开效果
Jul 19 Javascript
环形加载进度条封装(Vue插件版和原生js版)
Dec 04 Javascript
如何实现echarts markline标签名显示自己想要的
Jul 20 Javascript
Vue实现开关按钮拖拽效果
Sep 22 Javascript
jquery操作select方法汇总
Feb 05 #Javascript
高性能JavaScript模板引擎实现原理详解
Feb 05 #Javascript
jquery操作复选框checkbox的方法汇总
Feb 05 #Javascript
js中hash和ico的关联分析
Feb 05 #Javascript
js与jquery实时监听输入框值的oninput与onpropertychange方法
Feb 05 #Javascript
moment.js轻松实现获取当前日期是当年的第几周
Feb 05 #Javascript
javascript判断移动端访问设备并解析对应CSS的方法
Feb 05 #Javascript
You might like
php查询mysql数据库并将结果保存到数组的方法
2015/03/18 PHP
jQuery学习笔记之jQuery的动画
2010/12/22 Javascript
Jquery中获取iframe的代码
2011/01/11 Javascript
JS判断当前日期是否大于某个日期的实现代码
2012/09/02 Javascript
JS 控件事件小结
2012/10/31 Javascript
node.js中的fs.fstatSync方法使用说明
2014/12/15 Javascript
Bootstrap3.0建站教程(一)之bootstrap表单元素排版
2016/06/01 Javascript
javascript实现滚动效果的数字时钟实例
2016/07/21 Javascript
用file标签实现多图文件上传预览
2017/02/14 Javascript
jQuery操作css样式
2017/05/15 jQuery
全面介绍vue 全家桶和项目实例
2017/12/27 Javascript
10 种最常见的 Javascript 错误(频率最高)
2018/02/08 Javascript
vue 子组件向父组件传值方法
2018/02/26 Javascript
浅谈VUE单页应用首屏加载速度优化方案
2018/08/28 Javascript
在vue中阻止浏览器后退的实例
2019/11/06 Javascript
Jquery异步上传文件代码实例
2019/11/13 jQuery
[50:29]2014 DOTA2华西杯精英邀请赛 5 24 DK VS iG
2014/05/26 DOTA
python抓取网页时字符集转换问题处理方案分享
2014/06/19 Python
在Python中使用pngquant压缩png图片的教程
2015/04/09 Python
python3简单实现微信爬虫
2015/04/09 Python
python中闭包Closure函数作为返回值的方法示例
2017/12/17 Python
Python 实现输入任意多个数,并计算其平均值的例子
2019/07/16 Python
django搭建项目配置环境和创建表过程详解
2019/07/22 Python
python实现机器人卡牌
2019/10/06 Python
python os.path.isfile()因参数问题判断错误的解决
2019/11/29 Python
JetBrains PyCharm(Community版本)的下载、安装和初步使用图文教程详解
2020/03/19 Python
python 多线程共享全局变量的优劣
2020/09/24 Python
HTML5 语音搜索(淘宝店语音搜素)
2013/01/03 HTML / CSS
前台接待岗位职责
2013/12/03 职场文书
应届生如何写自荐信
2014/01/05 职场文书
班级德育工作实施方案
2014/02/21 职场文书
项目委托协议书(最新)
2014/09/13 职场文书
财务会计求职信范文
2015/03/20 职场文书
钢铁是怎样炼成的读书笔记
2015/06/29 职场文书
低端且暴利的线上线下创业项目分享
2019/09/03 职场文书
使用vue判断当前环境是安卓还是IOS
2022/04/12 Vue.js