js中字符串函数

JS中的字符串函数

​ 最近在看前端面试题,看到很多字符串的题目,写一下扩充一下知识。

  • slice()方法

    • 从字符串的第一个参数下标提取第二个参数长度-1的字符串,数组也可以使用,原字符串不变。第二个参数不填则返回原字符串。

      返回一个string/obj

    • var str = 'abcde';
      console.log(str.slice(1,2));
      //b
      console.log(str.slice(1,1));
      //返回空''
      
  • substring()

    • 从字符串的第一个参数提取第二个参数,原字符串不变,第二个参数不填则返回原字符串。返回string

    • var str = 'abcde';
      var str2 = str.substring(1,2);
      //b
      
      
    • 看起来这两个函数这么像,那么有什么区别

      • slice方法既可以在字符串里使用,也可以在数组里面使用
      • substring方法只能在字符串里使用
  • indexof()

    • 查找一个字符串在字符串中出现的位置,失败则返回-1
  • LastIndexof

    • 查找一个字符串在字符串中最后出现的位置

    • 'abc abc asd'.indexOf('a');//0
      
      'abc abc asd'.lastIndexOf('a');//8
      
      'abc abc asd'.lastIndexOf('a',7);//4
      /*
      	1. indexOf('a', 7) 查找的是字符串前7位之后的第一个a
      	2. lastIndexOf('a', 7) 查找的是字符串前7位之内的最后一个a
      	3. 千万不要混淆把 lastIndexOf('a', 7) 理解成查找字符串倒数第7位中的a
      	4. 空格也是一位数
      */
      
  • Replace()

    • 字符串替换,第一个参数可以是子字符串或者是正则表达式(这个以后再写),第二个参数为要替换成的字符串.不改变原字符串

    • 'abc abc asd'.replace('abc','ddd');
      //ddd abc asd
      
  • Split()

    • 字符串分割方法,用于把一个字符串分割成字符串数组。

    • 第一个参数为字符串或者正则表达式(以后写),从该位置分割(*)必填

    • 第二个参数为分割后的数组的最大长度

    • 'abc abc asd'.split(' ', 2 );
      //["abc", "abc"]
      'abc abc asd'.split(' ');
      //["abc", "abc", "asd"]
      
如果你需要自己写一个字符串的函数,那么需要在字符串原型中添加方法
String.prototype.pri= function(){
    console.log(this);
}
'aasd'.pri();
//String {"aasd"}
最后

字符串操作是js中一大特别重要的基础知识,在学习之余要经常的去使用他们,很多面试题中也会经常的出现,要重点掌握。

猜你喜欢

转载自blog.csdn.net/qq_36330972/article/details/88798473