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 相关文章推荐
js实现的网页颜色代码表全集
Jul 17 Javascript
向大师们学习Javascript(视频与PPT)
Dec 27 Javascript
jquery与js函数冲突的两种解决方法
Sep 09 Javascript
ie 7/8不支持trim的属性的解决方案
May 23 Javascript
jquery html5 视频播放控制代码
Nov 06 Javascript
javascript设计模式之单体模式学习笔记
Feb 15 Javascript
关于定制FileField中的上传文件名称问题
Aug 22 Javascript
Vue.js devtool插件安装后无法使用的解决办法
Nov 27 Javascript
vue3.0 CLI - 2.4 - 新组件 Forms.vue 中学习表单
Sep 14 Javascript
Vue文本模糊匹配功能如何实现
Jul 30 Javascript
vue 判断两个时间插件结束时间必选大于开始时间的代码
Nov 04 Javascript
Javascript webpack动态import
Apr 19 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
天使彦史上最神还原,性别曝光的那一刻,百万网友恋爱了
2020/03/02 国漫
Thinkphp中Create方法深入探究
2014/06/16 PHP
PHP+iFrame实现页面无需刷新的异步文件上传
2014/09/16 PHP
基于swoole实现多人聊天室
2018/06/14 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
javascript event 事件解析
2011/01/31 Javascript
同一页面多个商品倒计时JS 基于面向对象的javascript
2012/02/16 Javascript
jQuery中的height innerHeight outerHeight区别示例介绍
2014/06/15 Javascript
浅谈JSON中stringify 函数、toJosn函数和parse函数
2015/01/26 Javascript
在JavaScript中使用对数Math.log()方法的教程
2015/06/15 Javascript
JavaScript操作XML/HTML比较常用的对象属性集锦
2015/10/30 Javascript
JavaScript中的闭包
2016/02/24 Javascript
jquery ajax双击div可直接修改div中的内容
2016/03/04 Javascript
jQuery实现选项联动轮播效果【附实例】
2016/04/19 Javascript
JavaScript中利用Array filter() 方法压缩稀疏数组
2018/02/24 Javascript
js数据类型检测总结
2018/08/05 Javascript
webpack优化的深入理解
2018/12/10 Javascript
Django在Win7下的安装及创建项目hello word简明教程
2014/07/14 Python
Python selenium如何设置等待时间
2016/09/15 Python
Python获取昨天、今天、明天开始、结束时间戳的方法
2018/06/01 Python
python处理大日志文件
2019/07/23 Python
Python sql注入 过滤字符串的非法字符实例
2020/04/03 Python
Python三维绘图之Matplotlib库的使用方法
2020/09/20 Python
HTML5梦幻之旅——炫丽的流星雨效果实现过程
2013/08/06 HTML / CSS
中国跨境海淘网站:考拉海购
2016/08/01 全球购物
八年级历史教学反思
2014/01/10 职场文书
教学实习自我评价
2014/01/28 职场文书
办理信用卡收入证明范例
2014/09/13 职场文书
物流专业专科生职业生涯规划书
2014/09/14 职场文书
毕业纪念册寄语大全
2015/02/26 职场文书
2015年试用期自我评价范文
2015/03/10 职场文书
2015年部门工作总结范文
2015/03/31 职场文书
全国法制宣传日活动总结
2015/05/05 职场文书
公安忠诚教育心得体会
2016/01/23 职场文书
nginx基于域名,端口,不同IP的虚拟主机设置的实现
2021/03/31 Servers
JS实现数组去重的11种方法总结
2022/04/04 Javascript