JavaScript:String对象
String 对象
String 对象用于处理文本(字符串)。
String 对象创建方法: new String().
语法
或者更简单方式:
var txt = "string";了解 String 对象教程,请查看 JavaScript String 对象教程。
String 对象属性
属性 | 描述 |
---|---|
constructor | 对创建该对象的函数的引用 |
length | 字符串的长度 |
prototype | 允许您向对象添加属性和方法 |
String 对象方法
方法 | 描述 |
---|---|
charAt() | 返回在指定位置的字符。 |
charCodeAt() | 返回在指定的位置的字符的 Unicode 编码。 |
concat() | 连接两个或更多字符串,并返回新的字符串。 |
fromCharCode() | 将 Unicode 编码转为字符。 |
indexOf() | 返回某个指定的字符串值在字符串中首次出现的位置。 |
lastIndexOf() | 从后向前搜索字符串。 |
match() | 查找找到一个或多个正则表达式的匹配。 |
replace() | 在字符串中查找匹配的子串, 并替换与正则表达式匹配的子串。 |
search() | 查找与正则表达式相匹配的值。 |
slice() | 提取字符串的片断,并在新的字符串中返回被提取的部分。 |
split() | 把字符串分割为字符串数组。 |
substr() | 从起始索引号提取字符串中指定数目的字符。 |
substring() | 提取字符串中两个指定的索引号之间的字符。 |
toLowerCase() | 把字符串转换为小写。 |
toUpperCase() | 把字符串转换为大写。 |
trim() | 去除字符串两边的空白 |
valueOf() | 返回某个字符串对象的原始值。 |
String HTML 包装方法
HTML 包装方法返回加入了适当HTML标签的字符串。
方法 | 描述 |
---|---|
anchor() | 创建 HTML 锚。 |
big() | 用大号字体显示字符串。 |
blink() | 显示闪动字符串。 |
bold() | 使用粗体显示字符串。 |
fixed() | 以打字机文本显示字符串。 |
fontcolor() | 使用指定的颜色来显示字符串。 |
fontsize() | 使用指定的尺寸来显示字符串。 |
italics() | 使用斜体显示字符串。 |
link() | 将字符串显示为链接。 |
small() | 使用小字号来显示字符串。 |
strike() | 使用小字号来显示字符串。 |
sub() | 把字符串显示为下标。 |
sup() | 把字符串显示为上标。 |
String对象是动态对象,需要创建对象实例后才能引用该对象的属性和方法,该对象主要用于处理或格式化文本字符串以及确定和定位字符串中的子字符串。
1.创建String对象
String对象用于操纵和处理文本串,可以通过该对象在程序中获取字符串长度、提取子字符串,以及将字符串转换为大写或小写字符。
var newstr=new String(StringText)
参数说明:
newstr:创建的String对象名。 StringText:可选项。字符串文本。
例如,创建一个String对象。 var newstr=new String(“欢迎使用JavaScript脚本”)
2.String对象的属性
在String对象中有3个属性,分别是length、constructor和prototype。
下面对这几个属性进行详细介绍。
(1)length属性 该属性用于获得当前字符串的长度。
stringObject.length
参数说明: stringObject:当前获取长度的String对象名,也可以是字符变量名。
(2)constructor属性 该属性用于对当前对象的函数的引用。
Object.constructor
参数说明: Object:String对象名或字符变量名。
(3)prototype属性 该属性可以为对象添加属性和方法。
object.prototype.name=value
参数说明: object:对象名或字符变量名。 Name:要添加的属性名。 Value:添加属性的值。
String对象构造函数
var
strobject
=
new
String
(
str
)
;
var
str
=
String
(
str
)
;
使用new操作符调用构造函数String(str)可以将参数str转换为一个字符串,并且返回包括这个字符串的String对象
不使用new操作符,直接调用String函数,将转换参数str为一个字符串,并返回这个值
var
str
=
"
drea mdu
"
;
建立一个字符串最简单常用的方法
String函数与属性使用语法
string
.方法名
(
参数
1
,参数
2
,...
)
;
string
.属性;
string代表一个字符串,可以是str="字符串";
这种方式定义的str,也可以直接是"字符串"
可以没有参数,比如toLowerCase()函数,或有多个参数,比如concat()函数
示例
var
str
=
"
www.dreamdu.com
"
;
var
length
=
str
.
length
;
var
str
=
"
www.dreamdu.com
"
.
toUpperCase
(
)
;
JavaScript_String函数按功能分类
String查找类函数
- charAt() 函数 -- 返回指定位置(n)的字符
- charCodeAt() 函数 -- 返回指定位置(n)字符的Unicode编码
- indexOf() 函数 -- 返回substring在string中的位置
- lastIndexOf() 函数 -- 返回substring在string中最后匹配(出现)的位置
String操作类函数
- concat() 函数 -- 合并多个字符串,并返回合并的结果
- replace() 函数 -- 将字符串string中的oldStr1替换为newStr2
- slice() 函数 -- 返回被截取的字符串
- split() 函数 -- 将字符串分割为字符串数组,并返回此数组
- substr() 函数 -- 返回从string的startPos位置,长度为length的字符串
- substring() 函数 -- 返回从string的startPos位置,到endPos位置的字符串
String转换类函数
- fromCharCode() 函数 -- 返回多个Unicode代码组成的字符串
String比较类函数
- localeCompare() 函数 -- 使用本地规则比较字符串string与string2,并返回比较结果
String大小写转换函数
- toLocaleLowerCase() 函数 -- 返回本地小写字符串
- toLocaleUpperCase() 函数 -- 返回本地大写字符串
- toLowerCase() 函数 -- 返回小写字符串
- toUpperCase() 函数 -- 返回大写字符串
HTML标签类函数
- anchor() 函数 -- 返回HTML a 标签中name属性为str的锚
- big() 函数 -- 返回HTML big 标签定义的大字体
- blink() 函数 -- 返回使用HTML blink 标签定义的闪烁字符串
- bold() 函数 -- 返回使用HTML b 标签定义的粗体字符串
- fixed() 函数 -- 返回使用HTML tt 标签定义的单间距字符串
- fontcolor() 函数 -- 返回使用HTML font 标签中color属性定义的带有颜色的字符串
- fontsize() 函数 -- 返回使用HTML font 标签中size属性定义的指定尺寸的字符串
- italics() 函数 -- 返回使用HTML i 标签定义的斜体字符串
- link() 函数 -- 返回使用HTML a 标签定义的链接
- small() 函数 -- 返回使用HTML small 标签定义的小字体的字符串
- strike() 函数 -- 返回使用HTML strike 标签定义删除线样式的字符串
- sub() 函数 -- 返回使用HTML sub 标签定义的下标字符串
- sup() 函数 -- 返回使用HTML sup 标签定义的上标字符串
JavaScript_String函数按照字母排序
- anchor() 函数 -- 返回HTML a 标签中name属性为str的锚
- big() 函数 -- 返回HTML big 标签定义的大字体
- blink() 函数 -- 返回使用HTML blink 标签定义的闪烁字符串
- bold() 函数 -- 返回使用HTML b 标签定义的粗体字符串
- charAt() 函数 -- 返回指定位置(n)的字符
- charCodeAt() 函数 -- 返回指定位置(n)字符的Unicode编码
- concat() 函数 -- 合并多个字符串,并返回合并的结果
- fixed() 函数 -- 返回使用HTML tt 标签定义的单间距字符串
- fontcolor() 函数 -- 返回使用HTML font 标签中color属性定义的带有颜色的字符串
- fontsize() 函数 -- 返回使用HTML font 标签中size属性定义的指定尺寸的字符串
- fromCharCode() 函数 -- 返回多个Unicode代码组成的字符串
- indexOf() 函数 -- 返回substring在string中的位置
- italics() 函数 -- 返回使用HTML i 标签定义的斜体字符串
- lastIndexOf() 函数 -- 返回substring在string中最后匹配(出现)的位置
- link() 函数 -- 返回使用HTML a 标签定义的链接
- localeCompare() 函数 -- 使用本地规则比较字符串string与string2,并返回比较结果
- replace() 函数 -- 将字符串string中的oldStr1替换为newStr2
- slice() 函数 -- 返回被截取的字符串
- small() 函数 -- 返回使用HTML small 标签定义的小字体的字符串
- split() 函数 -- 将字符串分割为字符串数组,并返回此数组
- strike() 函数 -- 返回使用HTML strike 标签定义删除线样式的字符串
- String() 函数 -- String对象的构造函数
- sub() 函数 -- 返回使用HTML sub 标签定义的下标字符串
- substr() 函数 -- 返回从string的startPos位置,长度为length的字符串
- substring() 函数 -- 返回从string的startPos位置,到endPos位置的字符串
- sup() 函数 -- 返回使用HTML sup 标签定义的上标字符串
- toLocaleLowerCase() 函数 -- 返回本地小写字符串
- toLocaleUpperCase() 函数 -- 返回本地大写字符串
- toLowerCase() 函数 -- 返回小写字符串
- toUpperCase() 函数 -- 返回大写字符串
String 对象用于处理文本(字符串)。
1、创建String
var str = "Hello World";
var str1 = new String(str);
var str = String("Hello World");
此三种方法都可以,但是略有区别
2、length属性--->返回字符串的长度
3、anchor() 方法用于创建 HTML 锚。
HTML锚是什么?
就是<a ...>...</a>
stringObject.anchor(anchorname)
anchorname 必需。为锚定义名称。
var txt="Hello world!"
document.write(txt.anchor("myanchor"))
输出为:
<a name="myanchor">Hello world!</a>
当然在浏览器中看到的就是Hello world!
4、big() 方法用于把字符串显示为大号字体。
使用方法:
var str="Hello world!"
document.write(str.big())
5、blink() 方法用于显示闪动的字符串。
使用方法:
var str="Hello world!"
document.write(str.blink())
6、bold() 方法用于把字符串显示为粗体。
var str="Hello world!"
document.write(str.bold())
7、charAt() 方法可返回指定位置的字符。
stringObject.charAt(index)
index 必需。表示字符串中某个位置的数字,即字符在字符串中的下标。
注释:字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。
8、charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。
方法 charCodeAt() 与 charAt() 方法执行的操作相似,
只不过前者返回的是位于指定位置的字符的编码,而后者返回的是字符子串。
var str="Hello world!"
document.write(str.charCodeAt(1))
输出为:101
9、concat() 方法用于连接两个或多个字符串。
stringObject.concat(stringX,stringX,...,stringX)
stringX 必需。将被连接为一个字符串的一个或多个字符串对象。
提示:请注意,使用 " + " 运算符来进行字符串的连接运算通常会更简便一些。
var str1="Hello "
var str2="world!"
document.write(str1.concat(str2))
输出为:
Hello world!
10、fontcolor() 方法用于按照指定的颜色来显示字符串。
stringObject.fontcolor(color)
color 必需。为字符串规定 font-color。该值必须是颜色名(red)、RGB 值(rgb(255,0,0))或者十六进制数(#FF0000)。
例:
var str="Hello world!"
document.write(str.fontcolor("Red"))
11、lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。
stringObject.lastIndexOf(searchvalue,fromindex)
searchvalue 必需。规定需检索的字符串值。
fromindex 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的最后一个字符处开始检索。
注释:lastIndexOf() 方法对大小写敏感!
如果要检索的字符串值没有出现,则该方法返回 -1。
例:
var str="Hello world!"
document.write(str.lastIndexOf("Hello") + "<br />")
document.write(str.lastIndexOf("World") + "<br />")
document.write(str.lastIndexOf("world"))
输出:
0
-1
6
12、link() 方法用于把字符串显示为超链接。
stringObject.link(url)//url 必需。规定要链接的 URL。
var str="Free Web Tutorials!"
document.write(str.link("http://www.w3school.com.cn"))
13、match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置。
stringObject.match(searchvalue)
searchvalue 必需。规定要检索的字符串值。
或:
stringObject.match(regexp)
regexp 必需。规定要匹配的模式的 RegExp 对象。如果该参数不是 RegExp 对象,则需要首先把它传递给 RegExp 构造函数,将其转换为 RegExp 对象。
var str="Hello world!"
document.write(str.match("world") + "<br />")
document.write(str.match("World") + "<br />")
document.write(str.match("worlld") + "<br />")
document.write(str.match("world!"))
输出为:
world
null
null
world!
14、replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
stringObject.replace(regexp/substr,replacement)
regexp/substr 必需。规定子字符串或要替换的模式的 RegExp 对象。
请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。
replacement 必需。一个字符串值。规定了替换文本或生成替换文本的函数。
一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。
例:
var str="Visit Microsoft!"
document.write(str.replace(/Microsoft/, "W3School"))
输出结果为:
Visit W3School!
15、search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。
stringObject.search(regexp)
regexp 该参数可以是需要在 stringObject 中检索的子串,也可以是需要检索的 RegExp 对象。
注释:要执行忽略大小写的检索,请追加标志 i。
返回值:
stringObject 中第一个与 regexp 相匹配的子串的起始位置。
注释:如果没有找到任何匹配的子串,则返回 -1。
注:search() 对大小写敏感
例:
var str="Visit W3School!"
document.write(str.search(/W3School/))
输出:
6
16、slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
stringObject.slice(start,end)
start 要抽取的片断的起始下标。如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。
end 紧接着要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置。
返回值:
一个新的字符串。包括字符串 stringObject 从 start 开始(包括 start)到 end 结束(不包括 end)为止的所有字符。
String.slice() 与 Array.slice() 相似
var str="Hello happy world!"
document.write(str.slice(6))
输出:happy world!
var str="Hello happy world!"
document.write(str.slice(6,11))
输出:happy
17、split() 方法用于把一个字符串分割成字符串数组。
stringObject.split(separator,howmany)
separator 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
howmany 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
注释:如果把空字符串 (""),不是空格,用作 separator,那么 stringObject 中的每个字符之间都会被分割
例:
var str="How are you doing today?"
document.write(str.split(" ") + "<br />")
document.write(str.split("") + "<br />")
document.write(str.split(" ",3))
输出:
How,are,you,doing,today?
H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?
How,are,you
18、substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。
stringObject.substr(start,length)
start 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。
length 可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。
返回值:
一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 lenght 个字符。如果没有指定 lenght,那么返回的字符串包含从 start 到 stringObject 的结尾的字符。
注:ECMAscript 没有对该方法进行标准化,因此反对使用它。
var str="Hello world!"
document.write(str.substr(3,7))
输出:
lo worl
19、substring() 方法用于提取字符串中介于两个指定下标之间的字符。
stringObject.substring(start,stop)
start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1,如果省略该参数,那么返回的子串会一直到字符串的结尾。
返回值
一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。
注:
substring() 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。
如果参数 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
注:
与 slice() 和 substr() 方法不同的是,substring() 不接受负的参数。
例:
var str="Hello world!"
document.write(str.substring(3,7))
输出:
lo w
20、定义和用法
toLowerCase() 方法用于把字符串转换为小写。
stringObject.toLowerCase()//无参
返回值:
一个新的字符串,在其中 stringObject 的所有大写字符全部被转换为了小写字符。
21、toUpperCase() 方法用于把字符串转换为大写。
stringObject.toUpperCase()//无参
返回值:
一个新的字符串,在其中 stringObject 的所有小写字符全部被转换为了大写字符。
22、indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
stringObject.indexOf(searchvalue,fromindex)
searchvalue 必需。规定需检索的字符串值。
fromindex 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。
说明:
该方法将从头到尾地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的 fromindex 处或字符串的开头(没有指定 fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一次出现的位置。stringObject 中的字符位置是从 0 开始的。
注:indexOf() 方法对大小写敏感!
例:
var str="Hello world!"
document.write(str.indexOf("Hello") + "<br />")
document.write(str.indexOf("World") + "<br />")
document.write(str.indexOf("world"))
输出:
0
-1
6