JavaScript编程开发String类型解析
程序员文章站
2022-05-28 15:06:33
字符方法
访问字符串中特定字符的方法:
charat()和charcodeat()。这两个方法都接收一个参数,即基于0的字符位置。
charat()...
字符方法
访问字符串中特定字符的方法:
charat()和charcodeat()。这两个方法都接收一个参数,即基于0的字符位置。
charat() | charcodeat() |
---|---|
以单个字符字符串的形式返回给定位置的那个字符 | 返回给定位置的那个字符的字符编码 |
var stringvalue = “hello world”; stringvalue.charat(1) //返回“e” | var stringvalue = “hello world”; stringvalue.charcodeat(1) //返回”101” |
字符串操作方法
1、concat()方法,将一或多个字符串拼接起来,返回拼接得到的新字符串
var stringvalue = "hello "; var result = stringvalue.concat("world"); //stringvalue的值为"hello ",result的值为“hello world” var result1 = stringvalue.concat("world","!"); //stringvalue的值为"hello ",result1的值为“hello world!”
虽然concat()是专门用来拼接字符串的方法,但在实践中更多的还是用加号操作符(+)
2、基于子字符串创建新字符串的方法:slice()、substr()、substring()
相同点: *都会返回被操作字符串的一个子字符串, *而且也都接受一或两个参数,第一个参数指定字符串的开始位置,第二个参数表示子字符串到哪里结束。 *没有传递第二个参数,则将字符串的末尾作为结束位置 *slice()、substring()和substr()都不会修改字符串本身的值 不同点: *slice()和substring的第二个参数指定的是子字符串最后一个字符后面的位置。substr()的第二个参数指定的是返回字符个数。 *传递给方法的参数是负数时,slice()会将传入的负值与字符串的长度相加,substring()将负的第一个参数加上字符串的长度,而将负的第二个参数转化为0,substr()将所有负值参数都转化为0。
字符串位置方法 indexof()和lastindexof()
相同点:这两个方法都是从一个字符串中搜索给定的子字符串,然后返回子字符串的位置(如果没有你找到该子字符串,则返回-1) 不同点:indexof()方法是从字符串的开头向后搜索子字符串,而lastindexof()方法是从字符串的末尾向前搜索子字符串。
var stringvalue = "hello world"; stringvalue.indexof("o");//4 stringvalue.lastindexof("o");//7
trim()方法会创建一个字符串的副本,删除前置和后缀的所有空格,然后返回结果。不会改变字符串本身的值
var stringvalue = " hello world "; var trimstringvalue = stringvalue.trim(); //stringvalue的值为" hello world ",trimstringvalue的值为"hello world";
字符串大小写转换方法
tolowercase()、tolocalelower()、touppercase()和tolocaleuppercase()
var stringvalue - "hello world"; stringvalue.touppercase();//返回值为:"hello world" stringvalue.tolocalelowercase();//返回值为:"hello world" stringvalue.tolocalelowercase();//返回值为:"hello world" stringvalue.tolowercase();//返回值为:"hello world"
字符串的模式匹配方法
第一个方法:match()
match()方法只接收一个参数,要么是一个正则表达式,要么是一个regexp对象。 match()方法返回的是一个数组。
例子: var text = "cat, bat, sat, fat"; var pattern = /.at/;//匹配第一个以at结尾的字符 //与pattern.exec(text)相同 var matchs = text.match(pattern); matchs.index;//返回值为0 matchs[0];//返回值为"cat" parttern.lastindex;//返回值为0
第二个方法:search()
这个方法的唯一参数与,match()方法的参数相同,由字符串或regexp对象指定的一个正则表达式。 search()方法返回字符串中第一个匹配项的索引,如果没有找到匹配项,就返回-1。 而且,search()方法始终是从字符串开头向后查找模式。
var text = "cat, bat, sat, fat"; var pos = text.search(/at/); //pos的值为1
第三个方法:replace()
这个方法接收两个参数:第一个参数可以是regexp对象或者一个字符串(这个字符串不会被转换成正则表达式),第二个参数可以是一个字符串或一个函数。 如果第一个参数是字符串,那么只会替换第一个子字符串。要想替换所以子字符串,唯一的方法就是提供一个正则表达式,而且要指定全局(g)标识。
例子: var text = "cat, bat, sat, fat"; var result = text.replace("at","ond"); //result的值为"cond, bat, sat, fat" result = text.replace(/ar/g, "ond"); //result 的值为"cond, bond, sond, fond"
replace()方法的第二个参数也可以是函数。在只有一个匹配项的情况下,会向这个函数传递三个参数:模式的匹配项、模式匹配项在字符串中的位置和原始字符串。
第四个方法:split()
这个方法可以基于指定的分隔符将一个字符串分割成多个子字符串,并将结果存放在一个数组中。 分隔符可以是字符串,也可以是regexp对象(这个方法不会将字符串看成正则表达式)。 split()方法可以接收第二个参数,用于指定数组的大小,以便确保返回的数组不会超过既定大小。
例子: var colortext = "red,blue,green,yellow"; var colors1 = colortext.split(","); //返回值colors1为["red","blue","green","yellow"] var colors2 = colortext.split(",",2); //返回值colors2为["red","blue"] var colors3 = colortext.split(/[^\,]+/);// '/[^\,]+/'这个的意思是取不是逗号的连续字符 //返回值colors3为["",",",",",",",""]
localecompare()方法,比较两个字符串
localecompare()方法是比较两个字符串,并返回下列值中的一个: 如果字符串在字母表中应该排在字符串参数之前,则返回一个负数(大多数情况下是-1,具体的值要视实现而定); 如果字符串等于字符串参数,则返回0; 如果字符串在字母表中应该排在字符串参数之后,则返回一个正数(大多数情况下是1,具体的值同样要视实现而定);
例子: var stringvalue = "yellow"; stringvalue.localecompare("brick");//返回值为1
fromcharcode()方法
这个方法的任务是接收多个字符编码,然后将他们转换为一个字符串。 这个方法与实例方法charcodeat()执行的是相反的操作。
例子: string.fromcharcode(104,101,108,108,111);//"hello"
上一篇: jquery制作居中遮罩层效果分享
下一篇: 九代酷睿i3开放睿频加速:秒变i5