js 中字符串常用方法小结
–温故知新
- concact() - 拼接
返回值:两个或多个字符串拼接生成的新字符串
参数:待拼接的字符串(必须),可有多个
是否改变原字符串:否
var str1 = "Hello ";
var str2 = "world!";
var n1 = str1.concat(str2); // Hello world!
- replace() - 替换返新
返回值:一个新的字符串
参数:
① searchvalue(必须) - 规定子字符串或要替换的模式的 RegExp 对象或文本对象;
② newvalue(必须) - 一个字符串值。规定了替换文本或生成替换文本的函数
是否改变原字符串:否
备注:用一些字符替换另一些字符(首个匹配),或替换一个与正则表达式匹配的子串。
//用正则表达式匹配 执行一个全局替换:
var str="Mr Blue has a blue house and a blue car";
var n=str.replace(/blue/g,"red");
//输出结果:
//n : Mr Blue has a red house and a red car
//str : Mr Blue has a blue house and a blue car
- slice() - 截取区间
返回值: 提取的字符串
参数:
① start(必须) - 要抽取的片断的起始下标。起始位置为 0
② end(可选) - 截取终点
是否改变原字符串:否
var str="Hello world!";
var n1=str.slice(3);
//提取所有字符串:
var n2=str.slice(0);
//以上实例输出结果:
//n1: lo world!
//n2: Hello world!
- substr() - 截取数量
返回值:截取的固定长度的字符串
参数:
① start 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。
② length 可选。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。
是否改变原字符串:否
// 抽取指定数目的字符:
var str="Hello world!";
var n=str.substr(2,3)
//n 输出结果: llo
- indexOf()
返回值:某个指定的字符串值在字符串中首次出现的位置。如果没有找到匹配的字符串则返回 -1
参数:
① searchvalue 必需。规定需检索的字符串值。
② start 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 string Object.length - 1。如省略该参数,则将从字符串的首字符开始检索。
是否改变原字符串:否
//查找字符串 "welcome":
var str="Hello world, welcome to the universe.";
var n=str.indexOf("welcome");
// n 输出结果: 13
- split() - 分割
返回值:一个字符串数组
参数:
① separator - 可选。字符串或正则表达式,从该参数指定的地方分割 string Object。
② limit 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
是否改变原字符串:否
var str="How are you doing today?";
var n=str.split(" ");
// n 输出一个数组: [How,are,you,doing,today?]
- toString() - 返回一个表示 String 对象的值。
返回值: 一个字符串。
参数:无
是否改变原字符串:否
var str = "Runoob";
var res = str.toString();
//res 输出结果: Runoob
- trim() - 去空格
参数值:无。
返回值:String型 去除头尾空格后的字符串。
是否改变原字符串:否
//去除字符串的头尾空格:
var str = " Runoob ";
alert(str.trim());
//输出结果: Runoob
- toLowerCase() / toUpperCase() - 小写/大写转换
参数值:无。
返回值:String型 转换后的字符串。
是否改变原字符串:否
使用:string.toLowerCase() / .toUpperCase()
参考:
菜鸟教程