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实现的一个Flash滚动轮换显示图片代码生成器
Mar 14 Javascript
一个js写的日历(代码部分网摘)
Sep 20 Javascript
jQuery load方法用法集锦
Dec 06 Javascript
当json键为数字时的取值方法解析
Nov 15 Javascript
javascript实现在线客服效果
Jul 15 Javascript
使用 JavaScript 进行函数式编程 (一) 翻译
Oct 02 Javascript
基于jQuery实现自动轮播旋转木马特效
Nov 02 Javascript
javascript代码调试之console.log 用法图文详解
Sep 30 Javascript
详解Js中的模块化是如何实现的
Oct 18 Javascript
vue项目每30秒刷新1次接口的实现方法
Dec 04 Javascript
js实现上下左右键盘控制div移动
Jan 16 Javascript
vue基于better-scroll实现左右联动滑动页面
Jun 30 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中插入当前时间
2008/04/06 PHP
php5中date()得出的时间为什么不是当前时间的解决方法
2008/06/30 PHP
PHP开发的微信现金红包功能示例
2017/06/29 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
基于jQuery的公告无限循环滚动实现代码
2012/05/11 Javascript
jquery插件jTimer(jquery定时器)使用方法
2013/12/23 Javascript
js 中将多个逗号替换为一个逗号的代码
2014/06/07 Javascript
辨析JavaScript中的Undefined类型与null类型
2016/05/26 Javascript
详解JS几种变量交换方式以及性能分析对比
2016/11/25 Javascript
jQuery解析返回的xml和json方法详解
2017/01/05 Javascript
详解vue2路由vue-router配置(懒加载)
2017/04/08 Javascript
bootstrap3-dialog-master模态框使用详解
2017/08/22 Javascript
深入理解node.js http模块
2018/01/24 Javascript
vue引用js文件的多种方式(推荐)
2018/05/17 Javascript
微信小程序实现美团菜单
2018/06/06 Javascript
使用jquery Ajax实现上传附件功能
2018/10/23 jQuery
vue中使用better-scroll实现滑动效果及注意事项
2018/11/15 Javascript
从0到1构建vueSSR项目之路由的构建
2019/03/07 Javascript
微信提示 在浏览器打开 效果实现过程解析
2019/09/10 Javascript
WebStorm中如何将自己的代码上传到github示例详解
2020/10/28 Javascript
教你如何将 Sublime 3 打造成 Python/Django IDE开发利器
2014/07/04 Python
python实现读取并显示图片的两种方法
2017/01/13 Python
python中如何使用正则表达式的非贪婪模式示例
2017/10/09 Python
Python基于OpenCV库Adaboost实现人脸识别功能详解
2018/08/25 Python
django Serializer序列化使用方法详解
2018/10/16 Python
python web框架 django wsgi原理解析
2019/08/20 Python
python支付宝支付示例详解
2019/08/22 Python
postman传递当前时间戳实例详解
2019/09/14 Python
pandas 对group进行聚合的例子
2019/12/27 Python
平面设计的岗位职责
2013/11/08 职场文书
机关财务管理制度
2014/01/17 职场文书
孕妇离婚协议书范本
2014/11/20 职场文书
课外活动总结
2015/02/04 职场文书
如何让vue长列表快速加载
2021/03/29 Vue.js
在Docker容器中部署SQL Server
2022/04/11 Servers
如何vue使用el-table遍历循环表头和表体数据
2022/04/26 Vue.js