字符串索引相关方法
- charAt( )
- charCodeAt( )
- indexOf( )
- lastIndexOf()
charAt( ) && charCodeAt( )
语法:
stringObject.charAt(index)
stringObject.charCodeAt(index)
charAt: IE7+以上可以写成stringObject[index]的形式。
返回值:
charAt: 返回stringObject中index位置上的字符
charCodeAt: 返回stringObject中index位置上字符的字符编码
实例:
var str = "Hello World";
console.log(str[2]); //IE7+写法
console.log(str.charAt(2)); // l
console.log(str.charCodeAt(2)); //108
indexOf( )
从字符串开头搜索给定的字符串,返回子字符串位置索引
语法:
stringObject.indexOf("查询字符串")
如果没有找到,返回-1。
返回值: 数值(number)
实例:
var tel = "18888888888";
console.log(tel.indexOf("1")); // 0
console.log(tel.indexOf("7")); // -1
lastIndexOf( )
从字符串结尾开始搜索给定的字符串,返回子字符串位置索引
语法:
stringObject.lastIindexOf("查询字符串")
如果没有找到,返回-1。
返回值: 数值(number)
实例:
var email="dingchen@livesitter.com";
console.log(email.lastIndexOf("t")); //16
截取字符串
- slice( )
- substring( )
- substr
slice( )
截取子字符串
语法:
stringObject.slice(开始下标,结束下标)
参数:
开始下标(必需) 从何处开始选取;
结束下标(可选) 从何处结束选取。
当参数有负数,将参数与字符串长度相加。
实例:
var str = "Hello World";
console.log(str.slice(2,5)); // llo
substring( )
功能、语法与slice( )完全一样。
区别:
当参数为负数,自动转换成0;
substring( )会把较小的值作为开始位置。
实例:
var str = "Hello World";
console.log(str.substring(-1,2)); // He
console.log(str.substring(5,2)); // llo
substr( )
语法:
stringObject.substr(开始下标,截取个数)
参数:
开始下标:(必需)负数时,将参数与字符串长度相加。
截取个数:(可选) 忽略时,截取到末尾;负数时,返回空字符串。
实例:
var str = "Hello World";
console.log(str.substr(-3,2)); // rl
字符串转换成数组
split( )
把一个字符串分割成字符串数组。
语法:
stringObject.split("分隔符")
返回值: 数组(Array)
实例:
var str = "Nice-to-meet-you";
console.log(str.split("-")); // ["Nice", "to", "meet", "you"]
字符串替换
replace( )
在字符串中,用一些字符替换另一些字符;或替换成一个正则表达式匹配的字符串。
语法:
stringObject.replace("要被替换的字符/正则表达式","新字符串")
返回值: 字符串(string)
实例:
var email = "404491216@qq.com";
console.log(email.replace("qq","163")); //404491216@163.com
转换大小写
toUpperCase( ) && toLowerCase( )
toUpperCase( ):转换成大写
toLowerCase( ):转换成小写
实例:
var str = "Hello world";
var upStr = str.charAt(6).toUpperCase();
console.log(upStr); // W
var lowStr = str.toLowerCase();
console.log(lowStr); // hello world
注意:
不会改变源字符串,而是生成一个副本。