代码改变世界

Javascript字符串拼接小技巧

2016-06-02 01:47  图书馆的牧羊人  阅读(1166)  评论(2编辑  收藏  举报

在Javascript中经常会遇到字符串的问题,但是如果要拼接的字符串过长就比较麻烦了。

如果是在一行的,可读性差不说,如果要换行的,会直接报错。

在此介绍几种Javascript拼接字符串的技巧.

字符串相加(+)

var items = '<li class="details">' +
            '<span>Hello world</span>' +
            '</li>';

利用反斜线拼接字符串

var items = '<li class="details">' \
            '<span>Hello world</span>' \
            '</li>';

利用数组拼接字符串

利用数组的join方法,把数组转成字符串.

var empList = ['<li class="details">', '<span>Hello world</span>','</li>'].join("");

在数组的基础上可以封装一个StringBuffer的方法来完成字符串的拼接。

function StringBuffer(){
    this.buffer = [];
}
StringBuffer.prototype = {
    constructor: StringBuffer,
    append: function(str){
        this.buffer.push(str);
        return this;
    },
    toString: function(){
        return this.buffer.join('');
    }
};

ES6模板字符串

ES6中引入了一种新型的字面量语法,称为模板字符串。

用反撇号`来代替原来的单引号或双引号.

$('.warning').html(`
    <h1>Working!</h1>
    <p>迷糊餐厅</p>
    <p>区区一只亚麻太</p>
`);

字符串中的换行、缩进、空格都会原样输出到新生成的字符串中。

如果想要了解字符串拼接的性能问题,推荐去看Nicholas C.Zakas的《高性能Javascript》一书