JavaScript 字符串
作用:JavaScript 字符串用于存储和处理文本。
字符串的定义
定义一个空字符串:
var str = "";
字符串可以存储一系列字符,如 "John Doe"。
字符串可以是插入到引号中的任何字符。你可以使用单引号或双引号:
var str = "Volvo XC60";
var str = 'Volvo XC60';
可以在字符串中使用引号,字符串中的引号不要与字符串的引号相同:
var answer = "It's alright";
var answer = "He is called 'Johnny'";
var answer = 'He is called "Johnny"';
也可以在字符串添加转义字符来使用引号:
var x = 'It\'s alright';
var y = "He is called \"Johnny\"";
将字符串定义为对象
通常, JavaScript
字符串是原始值,可以使用字符创建: var firstName = "John"
但我们也可以使用 new
关键字将字符串定义为一个对象: var firstName = new String("John")
var x = "John";
var y = new String("John");
typeof x // 返回 String
typeof y // 返回 Object
var x = "John";
var y = new String("John");
(x === y) // 结果为 false,因为 x 是字符串,y 是对象
=== 为绝对相等,即数据类型与值都必须相等。
访问字符串
使用索引位置来访问字符串中的每个字符,索引从 0 开始。
var character = str[2];
字符串的长度
可以使用内置属性 length
来计算字符串的长度
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;
特殊字符
在 JavaScript
中,字符串写在单引号或双引号来中。但一些特殊字符在引号中无法正确解析,需要用转义字符(反斜杠\
)来进行转换。
转义字符将特殊字符转换为字符串字符:
转义字符 (\
) 可以用于转义撇号,换行,引号,等其他特殊字符。
-
\'
输出单引号
-
\"
输出双引号
-
\\
输出反斜杠
-
\n
输出换行
-
\r
输出回车
-
\t
输出制表符
-
\b
输出退格
-
\f
输出换页符
字符串属性和方法
原始值字符串,如 "John", 没有属性和方法(因为他们不是对象)。
原始值可以使用 JavaScript 的属性和方法,因为 JavaScript 在执行方法和属性时可以把原始值当作对象。
字符串属性
-
constructor
返回创建字符串属性的函数 -
length
返回字符串的长度 -
prototype
允许您向对象添加属性和方法
JavaScript 字符串(String) 对象
字符串方法(String 对象方法)
charAt()
返回指定索引位置的字符charCodeAt()
返回指定索引位置字符的 Unicode 值concat()
连接两个或多个字符串,返回连接后的字符串fromCharCode()
将 Unicode 转换为字符串indexOf()
返回字符串中检索指定字符第一次出现的位置lastIndexOf()
返回字符串中检索指定字符最后一次出现的位置localeCompare()
用本地特定的顺序来比较两个字符串match()
找到一个或多个正则表达式的匹配replace()
替换与正则表达式匹配的子串search()
检索与正则表达式相匹配的值slice()
提取字符串的片断,并在新的字符串中返回被提取的部分split()
把字符串分割为子字符串数组substr()
从起始索引号提取字符串中指定数目的字符substring()
提取字符串中两个指定的索引号之间的字符toLocaleLowerCase()
根据主机的语言环境把字符串转换为小写,只有几种语言(如土耳其语)具有地方特有的大小写映射toLocaleUpperCase()
根据主机的语言环境把字符串转换为大写,只有几种语言(如土耳其语)具有地方特有的大小写映射toLowerCase()
把字符串转换为小写toString()
返回字符串对象值toUpperCase()
把字符串转换为大写trim()
移除字符串首尾空白valueOf()
返回某个字符串对象的原始值
String HTML 包装方法
HTML 包装方法返回加入了适当HTML标签的字符串。
-
anchor()
创建 HTML 锚。 -
big()
用大号字体显示字符串。 -
blink()
显示闪动字符串。 -
bold()
使用粗体显示字符串。 -
fixed()
以打字机文本显示字符串。 -
fontcolor()
使用指定的颜色来显示字符串。 -
fontsize()
使用指定的尺寸来显示字符串。 -
italics()
使用斜体显示字符串。 -
link()
将字符串显示为链接。 -
small()
使用小字号来显示字符串。 -
strike()
用于显示加删除线的字符串。 -
sub()
把字符串显示为下标。 -
sup()
把字符串显示为上标。
示例
在字符串中查找字符串
字符串使用 indexOf()
来定位字符串中某一个指定的字符首次出现的位置:
var str="Hello world, welcome to the universe.";
var n=str.indexOf("welcome");
如果没找到对应的字符函数返回-1
lastIndexOf()
方法在字符串末尾开始查找字符串出现的位置。
内容匹配
match()
函数用来查找字符串中特定的字符,并且如果找到的话,则返回这个字符。
var str="Hello world!";
document.write(str.match("world") + "<br>"); //输出world
document.write(str.match("World") + "<br>"); //输出null
document.write(str.match("world!")); //输出world!
替换内容
replace()
方法在字符串中用某些字符替换另一些字符。
str="Please visit Microsoft!"
var n=str.replace("Microsoft","w3cschool");
字符串大小写转换
字符串大小写转换使用函数 toUpperCase()
/ toLowerCase()
:
var txt="Hello World!"; // String
var txt1=txt.toUpperCase(); // txt1 文本会转换为大写
var txt2=txt.toLowerCase(); // txt2 文本会转换为小写
字符串转为数组
字符串使用split()
函数转为数组:
txt="a,b,c,d,e" // String
txt.split(","); // 使用逗号分隔
txt.split(" "); // 使用空格分隔
txt.split("|"); // 使用竖线分隔