珠峰培训

JS中字符串的相关操作

作者:

2016-08-07 22:16:50

196

1.String字符串类

1.1 字符串属性

str.length 获取字符串中字符个数

var str = "hello world";
console.log(str.length); //11

1.2 字符串操作

  1. 字符串截取方法:
    str.substr(m,n); 从索引m开始,截取n个字符
    str.substring(m,n); 从索引m出开始查找,找到索引n处,不包含n,将查找到的内容返回
    str.slice(m,n); 从索引m出开始查找,找到索引n处,不包含n,将查找到的内容返回;支持负数索引,计算为str.length+负数索引
var str = "hello world";
console.log(str.substr(8,3)); //rld
console.log(str.substring(8,11)); //rld

以上三方法若参数中只有m一个参数,则都截取到str末尾

  1. 查找字符串索引
    str.indexOf(字符); 获取字符串中该字符第一次出现的索引位置
    str.lastIndexOf(字符); 获取字符串中该字符最后一次出现的索引位置
var str = "hello world";
console.log(str.indexOf("l")); //2
console.log(str.lastIndexOf("l")); //9
console.log(str.indexOf("a")); //-1

以上两方法中若没有找到该字符则返回-1;可用来判断是否包含某字符

  1. 大小写转换
    str.toLowerCase(); 将字符串转换为小写字母
    str.toUpperCase(); 将字符串转换为大写字母
var str = "hello WORLD";
console.log(str.toLowerCase());
console.log(str.toUpperCase());
  1. 替换字符
    str.replace(oldStr,newStr); 在不使用正则的情况下,每一次调用都只替换一次
var str = "hello world";
var newstr = str.replace(/l/g,'a');
console.log(newstr);
  1. 分隔字符串
    按照指定的字符将字符串拆分成数组
var str = "1+2+3+4"
var arr = str.split("+"); //["1","2","3","4"]
var arr2 = str.split(""); //["1","+","2","+","3","+","4"]
var arr3 = str.split(","); //["1+2+3+4"]

若没有字符则将每一项都拆分成数组元素,若找不到指定字符则将整体按一个元素添加到数组
此方法对应数组的join方法

  1. 字符串中也存在索引,从零开始,空格和换行等特殊字符也是字符
    str.charAt(n); 获取字符串中索引为n的字符
    str.charCodeAt(n); 获取指定位置字符对应的ASCII编码值
var str = "hello world";
console.log(str.charAt(8)); //r
console.log(str.charCodeAt(8)); //114