JavaScript String对象
2021-10-13 本文已影响0人
微语博客
JavaScript String对象是JS字符串的包装类,用于处理已有的JS字符串,字符串是编程语言中使用最频繁的数据类型,在JS中也是如此。
JavaScript 字符串
JS字符串可以存储一系列字符,可以使用单引号和双引号表示字符串。字符串可以定义字符串类型和对象类型。
var string = "Hello";
var string2 = new String("Hello");
console.log(string == string2);//true
console.log(string === string2);;//false
将其它类型的数据转换为字符串也是很常见的操作。
var num = 123;
var string = num.toString();
console.log(typeof string);//string
var string2 = String(num);
console.log(typeof string2);//string
var string3 = new String(num);
console.log(typeof string3);//object
字符串长度可以使用length属性计算,一个字符或汉字均为一个长度
var string = "Hello";
console.log(string.length);//5
var string2 = "Hello你好";
console.log(string2.length);//7
var string3 = "Hello 你好";
console.log(string3.length);//9
字符串操作
连接字符串可以通过 + 号运算符操作,也可以使用concat方法。
var string = "Hello";
console.log(string+"World");//HelloWorld
console.log(string.concat("World"));//HelloWorld
与其它数据类型用 + 号连接时会将其它类型隐式转换为字符串类型。
var string = "Hello";
var string2 = string + 123;
console.log(typeof string2);//string
var string3 =string + true;
console.log(typeof string3);//string
字符串使用 indexOf() 来定位字符串中某一个指定的字符首次出现的位置,lastIndexOf() 方法在字符串末尾开始查找字符串出现的位置,如果没找到对应的字符函数返回-1。
var string = "HelloWorld!";
console.log(string.indexOf("Wo"));//5
console.log(string.lastIndexOf("Wo"))//5
console.log(string.indexOf("WO"));//-1 大小写敏感
match()函数用来查找字符串中特定的字符,并且如果找到的话,则返回包含这个字符信息的数组。
var string = "HelloWorld!";
console.log(string.match("Hello"));//["Hello",index:0,input:HelloWorld!]
console.log(string.match("hello"));//null
replace()方法在字符串中用某些字符替换另一些字符。
var string = "HelloWorld!";
console.log(string.replace("World","世界"));//Hello世界!
字符串大小写转换使用函数 toUpperCase() / toLowerCase()
var string = "HelloWorld!";
console.log(string.toUpperCase());//HELLOWORLD!
console.log(string.toLowerCase());//helloworld!
转义字符
有些特殊字符因为有语法含义,需要转义之后才能正常显示,转义使用 斜杠 \
var string = "Today is Sunday, a \"funny\" day."
console.log(string);//Today is Sunday, a "funny" day.
代码 | 输出 |
---|---|
\' |
单引号 |
\" |
双引号 |
\\ |
斜杆 |
\n |
换行 |
\r |
回车 |
\t |
tab |
\b |
空格 |
\f |
换页 |
字符串常用属性和方法
属性:
属性 | 描述 |
---|---|
length | 返回字符串的长度 |
prototype | 返回字符串原型属性 |
constructor | 返回字符串构造器函数 |
方法:
方法 | 描述 |
---|---|
charAt() | 返回指定索引位置的字符 |
charCodeAt() | 返回指定索引位置字符的 Unicode 值 |
concat() | 连接两个或多个字符串,返回连接后的字符串 |
fromCharCode() | 将 Unicode 转换为字符串 |
indexOf() | 返回字符串中检索指定字符第一次出现的位置 |
lastIndexOf() | 返回字符串中检索指定字符最后一次出现的位置 |
localeCompare() | 用本地特定的顺序来比较两个字符串 |
match() | 找到一个或多个正则表达式的匹配 |
replace() | 替换与正则表达式匹配的子串 |
search() | 检索与正则表达式相匹配的值 |
slice() | 提取字符串的片断,并在新的字符串中返回被提取的部分 |
split() | 把字符串分割为子字符串数组 |
substr() | 从起始索引号提取字符串中指定数目的字符 |
substring() | 提取字符串中两个指定的索引号之间的字符 |
toLocaleLowerCase() | 根据主机的语言环境把字符串转换为小写,只有几种语言(如土耳其语)具有地方特有的大小写映射 |
toLocaleUpperCase() | 根据主机的语言环境把字符串转换为大写,只有几种语言(如土耳其语)具有地方特有的大小写映射 |
toLowerCase() | 把字符串转换为小写 |
toString() | 返回字符串对象值 |
toUpperCase() | 把字符串转换为大写 |
trim() | 移除字符串首尾空白 |
valueOf() | 返回某个字符串对象的原始值 |