老话题了,直接看代码:
// 方式A:直接采用多行写法
var a = '\
<div class="kissy-toolbar-button" title="{TITLE}">\
<div class="kissy-toolbar-button-outer-box">\
<div class="kissy-toolbar-button-inner-box">\
<span class="kissy-toolbar-{NAME}">{TEXT}</span>\
</div>\
</div>\
</div>';
// 方式B:用+号
var b = '<div class="kissy-toolbar-button" title="{TITLE}">' +
'<div class="kissy-toolbar-button-outer-box">' +
'<div class="kissy-toolbar-button-inner-box">' +
'<span class="kissy-toolbar-{NAME}">{TEXT}</span>' +
'</div>' +
'</div>' +
'</div>';
// 方式C:用数组join
var c = ['<div class="kissy-toolbar-button" title="{TITLE}">',
'<div class="kissy-toolbar-button-outer-box">',
'<div class="kissy-toolbar-button-inner-box">',
'<span class="kissy-toolbar-{NAME}">{TEXT}</span>',
'</div>',
'</div>',
'</div>'].join('');
考虑用 YUICompressor 压缩后的代码:test-min.js
很明显,对于纯排版美化的字符串连接来说,无论从性能还是压缩量上看,方式 B 都是最优的。