创建字符串
1、字面量创建字符串:var str='hello'
2、构造函数创建字符串:var str=new String('hello')
包装数据类型
-字符串、数值、布尔值是一个包装数据类型
-当使用时会自动转换成复杂数据类型,使用完自动转回基本数据类型
-使用点语句 .toString()
字符串操作
字符串有length属性->表示字符串长度,也就是字符串中字符串个数注意:空字符也算一个字符
-字符串是按照索引排列-可以通过索引访问每一个字符-字符值只能访问不能改变
字符串的常用方法
-字符串和数组有一个一样的地方,也是按照索引来排列的
charAt(索引) 是找到字符串中指定索引位置的内容返回
charCodeAt:charCodeAt() 方法可返回指定位置的字符的 Unicode 编码
indexOf & lastIndexOf:
-
indexOf 和 lastIndexOf 都是索引文件
-
indexOf 是查某个指定的字符串在字符串首次出现的位置(索引值)(从左往右)
-
lastIndexOf 是查某个指定的字符串在字符串最后一次出现的位置(索引值)(从右往左)
substring:-substring() 方法用于提取字符串中介于两个指定下标之间的字符
-语法:
stringObject.substring(start,stop)
注意:substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符
如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数
substr:-substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符
-语法:
stringObject.substr(start,length)
返回值:一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 length 个字符。如果没有指定 length,那么返回的字符串包含从 start 到 stringObject 的结尾的字符。
注释:substr() 的参数指定的是子串的开始位置和长度,因此它可以替代 substring() 和 slice() 来使用
replace:replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串
语法
stringObject.replace(regexp/substr,replacement)
返回值
一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的
splite:split() 方法用于把一个字符串分割成字符串数组
语法
stringObject.split(separator,howmany)
返回值
一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括 separator 自身。
但是,如果 separator 是包含子表达式的正则表达式,那么返回的数组中包括与这些子表达式匹配的字串(但不包括与整个正则表达式匹配的文本)。
注释:如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割
注释:String.split() 执行的操作与 Arry.join 执行的操作是相反的
trim:trim() 方法用于删除字符串的头尾空白符
includes:includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false
startsWith()&endsWith():
1、startsWith()方法
该startsWith()方法确定字符串是否以指定字符串的字符开头,返回true或false视情况而定。判断字符串以什么开头一般的话是用于来判断是否以http://开头或者以file:///开头
参数
接受两个参数:
第一个参数,要在此字符串开头搜索的字符第二个参数是指定从字符串开始的位置,默认从零开始
返回值
如果在字符串的开头找到给定的字符,返回true,否则返回false
2、endsWith()方法
endsWith()方法和startsWith()方法的语法都是一样的,不过endsWith()方法是从字符串的末尾开始查找比如你要判断这个字符串是不是以 .png .jpg 等这种
注意:请记住这个方法区分大小写!!!
toLowerCase 和 toUpperCase:
toLowerCase() 方法可以将字符串中的所有字符全部转换成小写,而非字母的字符不受影响
toUpperCase() 则将字符串中的所有字符全部转换成大写,而非字母的字符不受影响
备注:这两个方法只对英文字母有效,对除了A~Z和a~z的其余字符无任何效果
模板字符串
模板字符串使用反引号 (``) 来代替普通字符串中的用双引号和单引号
引用变量时可以使用 ${变量名}