javascript拼接字符串
来源:互联网 发布:上海华腾软件怎么样 编辑:程序博客网 时间:2024/05/01 14:17
当使用javascript动态生成dom的时候,总会用到字符串的拼接。比如会出现这种情况。
function getStr(name, xinbie, age, txt) { return '<div id="'+ name + '"> '+ name +'</div>' + '<div>'+ xinbie +'</div>' + '<div>'+ age +'</div>' + '<div>'+ text +'</div>';}
真的是太难看了。参数一多更不好看了。 改为以下函数来格式化一下
function formatString(/*format, Arg...*/) { var str = arguments[0]; var params = []; if(typeof str !== 'string') throw 'First argument is not a string object'; if($.isPlainObject(arguments[1])) { params = arguments[1]; for (var key in params) { str = str.replace(new RegExp('%\\{' + key + '\\}%', "g"), params[key]); } } else { params = [].splice.call(arguments, 1); var matchs = str.match(new RegExp('%\\{\\w+\\}%', "g")); matchs = matchs.filter(function(val, idx, arr){ return arr.indexOf(val) == idx; }); for(var idx in params) { str = str.replace(new RegExp(matchs[idx], "g"), params[idx]); } } return str;}
这样的话,上面那种可以这样写了
function getStr(name, xinbie, age, txt) { var template = '<div id="%{name}%">%{name}%</div>'+ '<div>%{xinbie}%</div>'+ '<div>%{age}%</div>'+ '<div>%{text}%</div>'; return formatString(template, { name: name, xinbie: xinbie, age: age, txt: txt });}
虽然比上面写的更多, 但是我认为更清晰一点。看起来更整体一点。不会被+号分割。
0 0
- javascript 拼接字符串
- JavaScript拼接字符串
- javascript拼接字符串
- JavaScript--9.字符串拼接
- Javascript 中的长字符串拼接
- Javascript中的长字符串拼接
- Javascript 中的长字符串拼接
- 关于JavaScript拼接字符串问题
- javascript中字符串拼接详解
- 一个误区(关于javascript的字符串拼接)
- JavaScript字符串数组拼接的性能
- JavaScript字符串数组拼接的性能
- JavaScript 字符串拼接性能分析小记
- JavaScript字符串拼接的性能问题
- 最优雅,高效的javascript字符串拼接
- 解决javascript加法 变成字符串拼接
- JavaScript中,加法变成拼接字符串
- JavaScript字符串拼接变量名及赋值
- Linux下安装svn服务器
- RadioGroup + ViewPager + Fragment 实现滑动展示界面
- Android网络框架xUtils中的View的视图绑定注解操作
- HBase 负载均衡
- Spring - SpEL
- javascript拼接字符串
- 6-HFile
- 创建TV布局
- kernel trick的原始想法
- CSS中behavior属性语法的使用介绍
- Android中实现滑动(拖动)的几种方法,玩转SlideMenu
- 文章标题
- hibernate注解详解
- hdu1194(水)