在js中进行字符串拼接。

JavaScript09

在js中进行字符串拼接。,第1张

用一个"+"将两个字符串"相加":

var longString = "One piece " + "plus one more piece."

要将多个字符串累积为一个字符串,还可以使用"+="操作符:

var result = ""

result += "My name is Anders"

result += " and my age is 25"

要在字符串中添加换行符,需要使用转义字符"":

var confirmString = "You did not enter a response to the last " +

"question.Submit form anyway?"

var confirmValue = confirm(confirmString)

但这种方法只能用在像警告、确认对话框之类的情况下,如果将这段文本作为HTML内容呈现,就无效了,此时用"<br>"代替它:

var htmlString = "First line of string.<br>Second line of string."

document.write(htmlString)

String对象还提供了方法concat(),它完成与"+"相同的功能:

string.concat(value1, value2, ...)

不过concat()方法显然不如"+"来得直观简洁。

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

如果在一行的话,可读性太差;如果换行的话,会直接报错。

现在就来介绍几个JavaScript拼接字符串的几个小技巧(主要针对字符串过长的情况)。

1. 字符串相加(+)

1

2

3

var empList = ' <li data-view-section="details">'+

'<span>Hello world</span>'+

'</li>'

2.利用反斜杠拼接字符串

1

2

3

var empList = ' <li data-view-section="details">\

<span>Hello world</span>\

</li>'

3. 利用数组拼接字符串

复制代码代码如下:

var empList = ['<li data-view-section="details">', '<span>Hello world</span>','</li>'].join("")

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

function StringBuffer(){

this.buffer = []

}

//将新添加的字符串添加到数组中

StringBuffer.prototype.append = function(str){

this.buffer.push(str)

return this

}

//转成字符串

StringBuffer.prototype.toString = function(){

return this.buffer.join("")

}

//用法

var buffer = new StringBuffer()

buffer.append("hello")

buffer.append(',world')

console.log(buffer.toString())

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

以上所述就是本文的全部内容了