创建String对象方式
声明:String对象的方法也可以在所有基本字符串值中访问到。
调用构造函数String():
var str = new String(); var str = new String('hello world');//初始化str,str.length = 11;
String访问及查找的方式
1.访问(通过索引)
(1)charAt()或[]
1个参数,参数为字符位置,返回字符
var strValue = new String('hello world');console.log(strValue.charAt(1));//econsole.log(strValue[1]);//e,IE7及以下版本使用这种方式,会返回undefined
(2)charCodeAt()
1个参数,参数为字符位置,返回字符编码
var strValue = new String('hello world');console.log(strValue.charCodeAt(1));//101
2.查找位置
(1)indexOf()
第一个参数为指定子字符串,第二个参数为检索位置。返回索引,如果没有找到则返回-1
var str = 'hello world'str.indexOf('l');//2,返回找到的第一个字符的位置str.indexOf('l',6);//9
(2)lastIndexOf()
与indexOf()的区别在于,lastIndexOf()是从字符串的末尾向前搜索子字符串
字符方法
1.扩展字符串
concat()
接受任意数量参数,用于将一个或多个字符串拼接起来,返回拼接得到新的字符串副本。
var str = new String('hello');var result = str.concat(' world');console.log(result);//hello worldtypeof result//"string"
2.获取子字符串方法
slice(),substr(),substring(),这三个方法都会返回被操作字符串的子字符串副本,而且也都接受1或2个参数,前闭后开[)
(1)slice()
var str = 'hello';str.slice(0,2);//"he",第一个参数指定字符串开始的位置,第二个参数表示字符串到哪里结束str.slice(-3);//"llo",o代表-1,依次倒数,-3代表倒数第三个的lstr.slice(-2,-1);//"l",同理,-2代表倒数第二个l,-1代表倒数第一的o
(2)substring()
var str = 'hello';str.substring(0,2);//"he",此时的参数意义同str.slice(0,2)str.substring(-3);//"hello",substring()方法会把所有负值参数转换为0str.substring(-3,-2);//"",同上
(3)substr()
var str = 'hello';str.substr(1,2);//"el",第一个参数指定字符串的开始位置,第二个参数指定的则是返回的字符个数str.substr(-3);//"llo",此时的参数意义同str.slice(-3)str.substr(-3,-1);//"",substr()方法会将负的第二个参数转换为0
substr()方法传递负值时在IE中存在问题,它会返回原始的字符串,IE9修复了这个问题
3.将字符串转换为数组
split()
基于指定的分隔符(可以是字符串,也可以是RegExp对象)将字符串分割成多个子字符串,并将结果放在一个数组中,可接受可选的第二个参数,用于指定数组的大小,返回数组。
新闻热点
疑难解答
图片精选