標籤:asc push 拼接字串 script turn 比較 false 字串 簡單的
前言
最近維護一個老系統,裡面有大量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的拼接現在一般用模板,這裡記錄以下
JavaScript 優雅簡單的拼接字串