zoukankan      html  css  js  c++  java
  • 字符串的常用方法

    在js中所有用单引号或者双引号包起来的字符叫做字符串,每个字符串是由零到多个字符组成的

    每个字符都有自己应用的索引,也有类似数组一样的length代表的长度

    var str='abcdefg';
    str.length; //字符串的长度
    str[0];//a
    str[str.length-1];//g
    str[100];//undefined

    常用的方法:

    字符串是基本数据类型,每一次操作都是值直接操作,不像数组一样是基于空间操作的,所以不存在原有字符串是否改变的一说,肯定是不变

    charAt / charCodeAt / String.fromCharCode

    作用:charAt 根据索引获取指定位置的字符 ;

    charCodeAt不仅仅获取字符,获取的是字符对用的Unicode编码值(ASC II码值)[10进制]

    String.fromCharCode返回的是编码对应的字符

    参数:索引

    返回值:字符或者对应的编码

    var str='abcdef';
    
    str.charAt(0);//a
    
    str.charCodeAt(0);// 97

    String.fromCharCode(97);//'a'

    indexOf / lastIndexOf 

    基于这两个方法,可以获取字符在字符串中第一次 / 最后一次出现的位置索引,找到返回位置索引,找不到返回-1,可以基于这两个方法,验证当前字符串中是否包含某个字符串

    var str='41234';
    
    if(str.indexOf('@')>-1){
       //条件成立说明包含@
    }

    slice:查找

    str.slice(n,m); 从索引n查找索引m处,不包含m,把找到的字符当做新字符返回
    
    str.slice(n); 从索引n处找到末尾
    
    str.slice(); 浅克隆字符串
    
    str.slice(-3,-1); 从倒数3个开始查找到倒数第1个

    substring :查找,与slice一样,区别是substring不支持负数

    substr:截取字符串

    str.substr(n,m):从索引n开始截取m个字符
    str.substr(n):从索引n开始截取到末尾
    str.substr(-2,3):从倒数-2的索引截取3个

    toUpperCase / toLowerCase 

    实现字母大小写转换

    toUpperCase:小写转大写

    toLowerCase:大写转小写

    split:和数组中的join相对应,join是把字符串按照指定的分隔符变为字符串,split是把字符串按照指定分隔符,拆分成数组中的每一项

    var str='1+4+7+8';
    str.split('+'); //['1','4','7','8']

    replace:

    作用:替换字符串中的原有字符

    参数:原有字符,要替换的新字符

    返回值:替换后的字符串

    //一般配合正则使用
    
    var str = 'zhongguo2019zz2019';
    
      str = str.replace('2019','good'); //zhongguogoodzz2019 不配合正则只能替换一个符合条件的字符

    str=str.replace(/2019/g,'good'); //zhongguogoodzzgood

    .......

     思考:将字符串“2019-8-29 21:04:0”获取到08月29日 21时04分

     var str='2019-8-29 21:8:0';
     var k=str.split(' '),
       l=k[0].split('-'),
       r=k[1].split(':'); //str.solit(/?:-| |:/g);一个正则搞定拆分
       function zero(x){
           return x<10?x='0'+x:x;
       }
      var m=zero(l[1]),
        d=zero(l[2]);
        h=zero(r[0]),
        s=zero(r[1]);
      var r=m+'月'+d+'日'+' '+h+'时'+s+'分';
      console.log(r);//08月29日 21时08分

    当然这样做很low啊,有高级点的写法:转换时间格式的方法

  • 相关阅读:
    第一次作业:了解编译原理
    DFA最小化,语法分析初步
    非确定的自动机NFA确定化为DFA
    正规式、正规文法与自动机
    正规文法与正规式
    词法分析程序的设计与实现
    文法和语言总结与梳理
    语法树,短语,直接短语,句柄
    理解文法和语文
    了解编译原理
  • 原文地址:https://www.cnblogs.com/xinxinxiangrong7/p/11431982.html
Copyright © 2011-2022 走看看