字符串
- 储存和获取一段文本为字符串
- 创建字符串的方法
⇨字面量创建
var str = “hello”;//string
⇨构造函数的创建
var str = new String(“hello”);//object - 字符串的特性
⇨length属性表示长度,即为字符串中字符的个数
⇨可以通过下标进行取值,但是不能通过下标赋值,字符串不能被修改的,如果想对字符串进行修改,需要形成新的字符串
⇨可以被循环遍历
字符串常用方法
- 有一列字符串,str = “good good study,day day up”;
- charAt();返回对应下标的字符
str.charAt(3);//d - charCodeAt();返回对应下标的字符编码
str.charCodeAt(3);//100 - 构造函数String方法,String.fromCharCode();接受一个或多个编码,返回编码对应的字符
String.fromCharCode(100);//d - indexOf();返回某个或某段字符第一次出现的位置,如果存在会返回该字符的下标,如果不存就会返回-1。此方法可以接收第二参数作为起使下标(默认为0)
⇨str.indexOf(”d“);//3
⇨str.indexOf(“day”);//18,如果是一段字符返回第一个字符的下标
⇨str.indexOf(“day”,19); -
lastIndexOf();返回某个或某段字符最后一次出现的位置
⇨str.lastIndexOf(“d”);//22
⇨str.lastIndexOf(“day”);//22 -
search();返回某个或某段字符第一次出现的位置,如果存在会返回该字符的下标,反之则会返回-1,用法和indexOf();一样,只不过search();方法可以配合正则表达式使用
//普通用法
str.search(”d“);//3
str.search(“day”);//18
//配合正则表达式使用
var reg = /Day/;//-1
var reg = /Day/i;//18
str.search(reg); - match();把字符串中符合要求的某个或某段字符提取出来放到数组中,匹配不到返回null
//普通用法(默认只匹配一个)
str.match(“day”);//day
//配合正则表达式使用
var reg=/day/;//day
var reg=/day/ig;//day day
str.match(“day”); - replace()用新的字符串替换原本的字符串,返回新的字符串,第二参数可以接收一个回调函数,函数的形参就是需要替换的字符
//普通用法(默认只替换一个)
str.replace(“day”,“money”);
//配合正则表达式使用
str.replace(“day”,“money”);
var reg=/day/;//day
var reg=/day/ig;//day day
str.replace(reg,“money”); - concat();表示字符串拼接
var str1 = “hello”;
var str2 = “world”;
str1.concat(str2);//helloworld - slice(startInsdex,endInsdex);表示字符串的裁切,startInsdex表示起始下标,endInsdex表示终止下标,如果不设置起始下标和终止下标,,默认起始下标为0,终止下标为长度
str.slice(5,9);//good
str.slice(5,-3);//good study,day day;-3表示倒数第三个 - substring(startInsdex,endInsdex);表示字符串的裁切,用法同slice
- substr(startInsdex,length);用法同slice,只不过slice可以接收负数,length表示裁切的长度
- split();用特定的字符,将字符串拆分为数组
str.split(“ ”);
//配合正则表达式使用
var reg = / /g;
var arr = str.split(reg); - toUpperCase();字母转大写,数字和中文保持原样
- toLowerCase();字母转小写
- trim();去除首尾空格
- trimLeft();去除头部(左边)空格
- trimRight();去除尾部(右边)空格
- 去除所有空格
var reg = / /g;
str.replace(reg,“”);