其他分享
首页 > 其他分享> > String

String

作者:互联网

length属性:字符串的长度, 'abc'.length > 3

查询方法

charAt():字符串指定索引的字符,'abc'.charAt(1) > 'b', 'abc'.charAt(3) > '' 超出索引返回空串

 

indexOf(searchStr, [startIndex]),从startIndex的位置向后搜索,没有默认为0,返回字符串开始的索引位置

lastIndexOf(searchStr, [endIndex]) 从endIndex的位置向后搜索,没有默认为length-1  'abcd'.lastIndexOf('bc',1) > 1
        从指定位置开始查询,不遵循前闭后开原则

//查找字符串中所有的目标子串
function(str,findStr){
  let pos = str.indexOf(findStr)
  let positions = new Array()
  while(pos != -1){
      positions.push(pos)
      pos = str.indexOf(findStr,pos+1)            
  }          
  return position  
}

 

 

startsWith(str, [startIndex]): 是否以str在startIndex的位置开头,没有默认为0,返回布尔值

endsWith(str, [lastIndex]): 是否以str在endIndex的位置结尾,,没有默认为字符串的结尾length,返回布尔值

includes(str, [startIndex]):从startIndex开始是否包含str字符串,返回布尔值

        遵循前闭后开原则

 

字符串的迭代器 let iterator = str[Symbol.iterator]()

迭代器访问字符串中的元素  iterator.next()  返回{value:xx,done:boolean}的对象

 

字符串的操作

trim():清除字符串两端的空格  '  abc  '.trim() > 'abc'

trimLeft():清除字符串左边的空格  '  abc  '.trimLeft() > 'abc  '

trimRight():清除字符串右边的空格  '  abc  '.trimRight() > '  abc'

 

字符串连接 concat()  可以有多个参数,效果和'+'相同, 'hello '.concat('world ','!','!') > hello world !!

字符串的复制 repeat()    'hello'.repeat(2)+'!' > hellohello!

字符串大小写转换:

toLowerCase():字符串转换成小写 'Hello'.toLowerCase()  > hello

toUpperCase():字符串转换成大写  'Hello'.toUpperCase() > HELLO

 

字符串的截取:

slice(startIndex,[endIndex]):入参截取开始的索引,截取结束的索引(没有则为length),返回截取后的字符串,没有返回空串.如果参数的索引为负取模,两个参数需要按照大小顺序传递

substring(startIndex,[endIndex]):入参截取开始的索引,截取结束的索引(没有则为length),返回截取后的字符串,没有返回空串.如果参数的索引为负取0,允许两个参数不按大小顺序传递

substr(startIndex,[length]):入参截取开始的索引,第二个参数是要截取的长度(没有截取到字符串末尾,长度超过字符串长度取字符串长度),返回截取后的字符串,如果参数为负第一个参数取模,第二个参数取0

    遵循前闭后开原则

字符串匹配

match():入参为字符串或者正则表达式, 返回一个伪数组对象,没有匹配返回null  'hello'.match('o') > ['o',index:4,input:'hello',groups:undefined]  'hello'.match('i') > null

search():入参为字符串后者正则表达式,返回index,没有返回-1   'hello'.search(/o/) > 4     'hello'.search('i') > -1

replace():两个参数第一个是字符串后者正则表达式,第二是字符串或者一个函数(使用函数可以对替换进行更精细的操作)   'hello'.replace('lo','id') > helid

//replace第二个参数是函数,将< > + 替换成转义字符
function(str){
  return str.replace(/[<>"&]/g,function(match,pos,originalText){
       switch(match){
           case "<":
                return "&lt;"
           case ">":
                return "&gt;"
           case "&":
                return "&amp;"
           case "\"":
                return "&quot;"
        }        
    })  
}    

 

 

 

  

 

标签:abc,String,截取,startIndex,str,字符串,hello
来源: https://www.cnblogs.com/houcoconut/p/15989020.html