一.字符串的创建
可以使用单引号或者双引号创建简单的字符串;
'foo';
"bar";
1).16进制转义序列
例:'\x61' //对应ASCII的小写字母a;
2).Unicode转义序列
'\u0061';//Unicode转义序列在\u之后需要至少四个字符
二.字符串对象
var s = String ("fro");//此处等价于var s = "fro";
console.log(s);//控制台显示:fro
document.write(typeof s);//输出string
String对象是对原始string类型的封装
var s =new String ("fro");
console.log(s);//控制台显示{'0':'f','1':'r','2':'o'};
document.write(typeof s);//输出object;
String对象有一个属性:length,标示了字符串中的字符个数
var str = "HelloWorld!";
alert(str.length);//11;
String对象的方法:
这里具体的方法实现不一一举例,网上有很多这方面的详细解释;
方法 | 描述 |
---|---|
charAt, charCodeAt, codePointAt | 返回字符串指定位置的字符或者字符编码。 |
indexOf, lastIndexOf | 分别返回字符串中指定子串的位置或最后位置。 |
startsWith, endsWith, includes | 返回字符串是否以指定字符串开始、结束或包含指定字符串。 |
concat | 连接两个字符串并返回新的字符串。 |
fromCharCode, fromCodePoint | 从指定的Unicode值序列构造一个字符串。这是一个String类方法,不是实例方法。 |
split | 通过将字符串分离成一个个子串来把一个String对象分裂到一个字符串数组中。 |
slice | 从一个字符串提取片段并作为新字符串返回。 |
substring, substr | 分别通过指定起始和结束位置,起始位置和长度来返回字符串的指定子集。 |
match, replace, search | 通过正则表达式来工作. |
toLowerCase, toUpperCase | 分别返回字符串的小写表示和大写表示。 |
trim | 去掉字符串开头和结尾的空白字符。 |
repeat | 将字符串内容重复指定次数后返回 |
三.多行模板字符串
模板字符串是一种允许内嵌表达式的String字面值,可以用它实现多行字符串或者字符串内插等特性
模板字符串使用反勾号 (` `) (grave accent) 包裹内容而不是单引号或双引号. 模板字符串可以包含占位符.
1)多行
使用一般字符串
console.log("the first line\n\
the second line");
//"the first line"
//"the second line"
使用模板字符串
console.log(`the first line
the second line`);
2)潜入表达式
在一般字符创中使用嵌入表达式
var a = 1;
var b = 2;
console.log("a加b的和是"+(a+b)+"\nnot"+(2*a+b));
//加b的和是3
//不是4
使用模板字符串
var a = 1;
var b = 2;
console.log(`a加b的和是 ${a+b} \n不是${2*a+b}.`);
//加b的和是3
//不是4