首页 > JavaScript
JS字符串(string)
JavaScript 字符串(String)就是由零个或多个 Unicode 字符组成的字符序列。零个字符表示空字符串。
1) 如果字符串包含在双引号中,则字符串内可以包含单引号;反之,也可以在单引号中包含双引号。例如,定义 HTML 字符串时,习惯使用单引号表示字符串,HTML 中包含的属性值使用双引号表示, 这样不容易出现错误。
2) 在 ECMAScript 3 中,字符串必须在一行内表示,换行表示是不允许的。例如,下面字符串直接量的写法是错误的。
如果要换行显示字符串,可以在字符串中添加换行符
3) 在 ECMAScript 5 中,字符串允许多行表示。实现方法:在换行结尾处添加反斜杠
4) 在字符串中插入特殊字符,需要使用转义字符,如单引号、双引号等。例如,英文中常用单引号表示撇号,此时如果使用单引号定义字符串,就应该添加反斜杠转义字符,单引号就不再被解析为字符串标识符,而是作为撇号使用。
5) 字符串中每个字符都有固定的位置。第 1 个字符的下标位置为 0,第 2 个字符的下标位置为 1…… 以此类推,最后一个字符的下标位置是字符串长度减1。
在 JavaScript 中,可以使用加号
在 ECMAScript 5 中,字符串可以作为只读数组使用。除了使用 charAt() 访问其中的字符外,还可以使用中括号运算符来访问。位置下标从 0 开始,最大位置下标为 length-1。
字符串直接量
字符串必须包含在单引号或双引号中。字符串直接量有以下几个特点。1) 如果字符串包含在双引号中,则字符串内可以包含单引号;反之,也可以在单引号中包含双引号。例如,定义 HTML 字符串时,习惯使用单引号表示字符串,HTML 中包含的属性值使用双引号表示, 这样不容易出现错误。
console.log('<meta charset="UTF-8">');
2) 在 ECMAScript 3 中,字符串必须在一行内表示,换行表示是不允许的。例如,下面字符串直接量的写法是错误的。
console.log("字符串 直接量"); //抛出异常
如果要换行显示字符串,可以在字符串中添加换行符
\n
。例如:
console.log("字符串\n直接量"); //在字符串中添加换行符
3) 在 ECMAScript 5 中,字符串允许多行表示。实现方法:在换行结尾处添加反斜杠
\
。反斜杠和换行符不作为字符串直接量的内容。例如:
console.log("字符串\ 直接量"); //显示“字符串直接量”
4) 在字符串中插入特殊字符,需要使用转义字符,如单引号、双引号等。例如,英文中常用单引号表示撇号,此时如果使用单引号定义字符串,就应该添加反斜杠转义字符,单引号就不再被解析为字符串标识符,而是作为撇号使用。
console.log('I can\'t read.'); //显示"I can' t read."
5) 字符串中每个字符都有固定的位置。第 1 个字符的下标位置为 0,第 2 个字符的下标位置为 1…… 以此类推,最后一个字符的下标位置是字符串长度减1。
字符串操作
借助 String 类型的原型方法,可以灵活操作字符串。再配合正则表达式,还可以完成复杂的字符串处理任务。在 JavaScript 中,可以使用加号
+
运算符连接两个字符串,使用字符串的 length 属性获取字符串的字符个数(长度)。示例
下面代码先合并两个字符串,然后计算它们的长度。var str1 = "学而不思则罔", str2 = "思而不学则殆", string = str1 + "," + str2; document.write(string); //显示“学而不思则罔,思而不学则殆” document.write(string.length); //显示 13
字符序列
JavaScript 字符串是固定不变的字符序列,虽然可以使用各种方法对字符串执行操作,但是返回的都是新的字符串,原字符串保持固定不变。此外,也不能使用 delete 运算符删除字符串中指定位置的字符。在 ECMAScript 5 中,字符串可以作为只读数组使用。除了使用 charAt() 访问其中的字符外,还可以使用中括号运算符来访问。位置下标从 0 开始,最大位置下标为 length-1。
示例2
下面代码使用 for 语句逐个读取字符串中每个字符并显示出来。var str = "学而不思则罔,思而不学则殆"; for(var i=0; i<str.length; i++){ console.log(str[i]); }注意:字符串中的字符不能被 for/in 语句循环枚举。
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算