字符串常用方法及应用

上一篇:字符串方法及使用

所有用单引号(' '), 双引号(" "), 反引号(``),抱起来的都是字符串

  • charAt / charCodeAt
// charAt:根据索引获取指定位置的字符
// charCodeAt:获取指定字符的ASII值
// return : 返回查找字符串,找不到返回空字符串
var str='shangxiaoxin'
console.log(str.charAt(0))//s
console.log(str.charAt(20))//" "
console.log(str.charCodeAt(0))//115
  • substr / substring / slice
/*
    substr(n,m) :从索引n开始截m个
    substring(n,m): 从索引n,开始截取到索引m (不包括m),不写m截完
    slice(n,m):同substing一样,但slice支持负数
*/
console.log(str.substr(0,3))//sha
console.log(str)
console.log(str.substring(0,3))//sha
console.log(str)
console.log(str.slice(0,-3))//shangxiao
  • indexOf / lastIndexOf / includes
/*
    indexof(x,y):获取x第一次出现的索引位置,y是控制查找起始位置的索引(从索引y开始查找)
    lastIndexOf(x): 获取最后一次出现位置的索引,
    includes(x):查找字符串是否存在x,return:  true/false
    如果x不存在,return: -1
*/
console.log(str.indexOf('x'))//5
console.log(str.indexOf('x',3))//5
console.log(str.indexOf('x',6))//9
console.log(str.lastIndexOf('x'))//9
console.log(str.indexOf('m'))//-1
console.log(str.includes('m'))//false
console.log(str.includes('x'))//true
  • toUpperCase / toLowerCase
/*
    toUperCase:转成大写
    toLowercase:转成小写
*/
console.log(str.toUpperCase())//SHANGXIAOXIN
str=str.toLowerCase()
console.log(str.toLocaleLowerCase())//shangxiaoxin

//将字符串中某些字符转换
var changeStr=str.substr(0,1).toUpperCase()+str.substring(1,str.indexOf('x'))+str.substr(str.indexOf('x'),1).toUpperCase()+str.substring(str.indexOf('x')+1,str.lastIndexOf('x'))+str.substr(str.lastIndexOf('x'),1).toUpperCase()+str.slice(str.lastIndexOf('x')+1)//将字符串中某些字符转换
console.log(changeStr)//ShangXiaoXin
  • split
/*
    split([分隔符]):把字符串按照指定的字符串中的某字符拆作为分隔符分成数组,与数组方法join对应

    split支持传递正则表达式
*/
var str='shang|xiao|lin';
console.log(str.split('|'))//["shang", "xiao", "lin"]
let ary=[1,2,3,4,5]
console.log(ary.join(','))//1,2,3,4,5
  • replace
/*
    replace(newStr,oldStr):实现新、老字符的替换。(总是伴随正则使用)
    在使用正则的情况下没执行一次replace只能替换一一个字符

*/
var str='晓林@杨帆@启航'

console.log(str.replace('@','-'))//晓林-杨帆@启航

console.log(str.replace('@','-').replace('@','-'))//晓林-杨帆-启航

//配合正则
console.log(str.replace(/@/g,"->"))//晓林->杨帆->启航

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容