字符串的方法:
定义/声明方式:
var str1 = 'Dragon';//字面量
var str2 = String( 'loveyouDragon' ) // 由底层提供
var str3 = new String('metoo') // 构造函数
常用方法一
length 长度:
var str = dragon;
//length 返回字符串的长度
console.log(str.length) // 6
一、charAt 返回自定索引的字符串:str.charAt( num )
var str = 'Dragonheihei'
console.log(str.charAt(3)) //返回指定下标的对应字符 g
二、concat 字符串拼接/合并字符串str.concat(str1)
var str = 'super'
var str1 = 'star'
console.log( str + str1 );// +号 字符串拼接
console.log(str.concat(str1)) //把第2个字符串合并到str里面
console.log(str.concat(str1,'?','sure'))//继续拼接!数量没有限制;
三、indexOf 查找字符串 str.indexOf(‘value’)
返回查找字符串首次出现的下标位置;
匹配失败返回 -1
var str = 'HelloWord'
console.log( str.indexOf('o'));// 所在下标4的位置
// (需要查找的字符,从下标num开始找)
console.log( str.indexOf('o',5));
//index 开始检索的位置, 合法值是 0 到 string.length - 1,默认0
//匹配失败返回-1
console.log( str.indexOf('G'));// -1
四、lastIndexOf 返回最后一次出现的下标位置。str.lastIndexOf(‘value’)
匹配失败返回 -1
var str = 'HelloWord'
console.log( str.lastIndexOf('o'));// 6 最后一次出现
//匹配失败返回-1
console.log( str.indexOf('G'));// -1
五、charCodeAt( index ) 返回指定索引的ASCII编码
var str = 'HelloWord'
//返回指定索引的ASCII编码
console.log(str.charCodeAt(1)) // 101 //ASCII表;
六、fromCharCode:返回指定ASCII编码的字符串
要在内建函数里面去调用;
String.fromCharCode(53)
console.log( String.fromCharCode(53) ); // '5 '
console.log( String.fromCharCode(53,50,48,49,51,49,52) ) // '5201314'
七、substring:截取字符串 str.substring( index,index )
如果 开始位置(5)比 停止位置(0) 大,那么该方法在提取子串之前会先交换这两个参数。str.substring( 5,0 ) ----> str.substring( 0,5 )
var str = '朋友小青是我的'
console.log(str.substring(0,2)) // 朋友 [0,2)
//开始位置的序号,第二个值为结束位置的序号; 包含开始不包含结束
console.log(str.substr(2))
//没有结束下标就默认为字符串的长度
八、substr:截取字符串 str.substr( index , length )
(从哪里(index)开始 ,截取多少个(length) )
var str = '朋友小青是我的'
console.log(str.substr(2,5)) // 小青是我的
//开始位置的index ,第二个值为截取的长度
console.log(str.substr(2))
//没有截取长度就从下标num开始截取后面所有
九、slice:截取字符串 str.slice( num,num )
截取字符串,从start 开始,截止到end(结束)前,不包含end(结束时)
- 和substring用法一样,从左往右截取
- start / end可以为负值,负值时,倒着从最后数
- start 和 end任何时候都不会交换位置,能截取才有值,截取不到则无值
朋 友 小 紫 也 是 我 的
0 1 2 3 4 5 6 7
var str = '朋友小紫也是我的'
console.log(str .slice(0,2)) // 朋友
朋 友 小 紫 也 是 我 的
-8 -7 -6 -5 -4 -3 -2 -1
var str = '朋友小紫也是我的'
console.log(str .slice(-8,-2)) // 朋友小紫也是
个人理解:把 -8(朋)当作起始点0 ,
-2(我)为结束位置
包含开始不包含结束所以 //朋友小紫也是
十、toLocaleUpperCase / toLocaleLowerCase 大小写
转大写 str.toLocaleUpperCase()
转小写 str.toLocaleLowerCase()
var str = 'look it is big'
str.toLocaleUpperCase() // "LOOK IT IS BIG"
str.toLocaleUpperCase().toLocaleLowerCase()
// "look it is big" //先转为大写然后又转回了小写
十一、match 匹配的值
//str.match( value/RegExp )
查找指定的值,返回匹配的值。
未找到返回null.正则可以找一个或多个表达式
var str = 'i love you '
console.log(str.match('l'));
//["l", index: 2, input: "i love you ", groups: undefined]
//输出一个数组,下标为num , input返回的是母串;
//在使用正则的时候,用得比较多。
十一、search 返回 检索字符串首次出现的位置;未找到返回-1
var str = 'i love you '
console.log(str.search('v')); // 4 返回下标;
未找到返回-1
//也是可以写正则表达式;
十二、replace替换
//str.replace( value/RegExp,new ) 用一些字符替换另一些字符,new可以是字符串,也可以是函数
var str = ' i love you'
console.log(str.replace( 'i','I' )) //' I love you'
十三、str.split( ) 分割成字符串数组
//str.split(value/RegExp) 方法用于把一个字符串分割成字符串数组, 返回分割后的数组
var str = '5201314'
// 返回数组!
console.log( str.split('0',5 )) // ["52", "1314"]
//按空格切,数据只返回一条数据!
console.log( str.split(' ') )
// ["5201314"] 没有空格所以只返回一个数组
//按空字符串切,每个内容都切!
console.log( str.split('') );
//["5", "2", "0", "1", "3", "1", "4"]