JS基础入门篇(十)—字符串方法

1.方法阅读说明

返回值类型 对象.方法名称(参数1[,参数二]);
解释:

返回值类型:指的是函数调用结束后返回的值的类型。
对象.方法名称:指的是调用方法。
参数列表:表示函数调用时传入的参数。[]表示可选参数,可写可不写。

2.字符串属性

定义:通过一对“”或者一对包起来的,由0个或者多个字符组成的就是字符串。
字符串长度:

string.length;

eg:

var str1="abc";
var str2="";
var str3=" ";
console.log(str1.length);//3
console.log(str2.length);//0
console.log(str3.length);//1

3.charAt

作用: 此方法返回对应位置的字符
语法: string string.charAt(index);
参数: index指 0到 字符串长度-1 的某个一个整数。
返回值: 返回字符串对应位置的字符

注意:

- 如果传入参数小于0或者大于 字符串长度-1,则返回空字串。
- 如果传入boolean值,如果为true,默认是转化为数字1,指到字符串第二个字符。如果为false,默认是转化为数字0,指到字符串第一个字符。
- 如果传入任意字符串,则指到字符串第一个字符。
<script>
        var str="abc";
        console.log(str.charAt(0));//a
        console.log(str.charAt(2));//c
        console.log(str.charAt(-88));//""
        console.log(str.charAt(false));//a
        console.log(str.charAt(true));//b
        console.log(str.charAt("unm"));//a
</script>

4.chatCodeAt

作用:返回对应位置字符的 Unicode 数值
语法: number string.charCodeAt(index);
参数: index指 0到 字符串长度-1 的某个一个整数。
返回值: 返回字符串对应位置的字符的 Unicode 数值

注意:
如果传入参数小于0或者大于 字符串长度-1,则返回空字串。则返回NAN。

<script>
    var str="abc";
    console.log(str.charCodeAt(0));//97
    console.log(str.charCodeAt(2));//99
    console.log(str.charCodeAt(-88));//NAN
    console.log(str.charCodeAt(false));//97
    console.log(str.charCodeAt(true));//98
    console.log(str.charCodeAt(undefined));//97
    console.log(str.charCodeAt("zzzz"));//97
</script>

4.fromCharCode

作用:将 Unicode 数值转化为对应的字符。
语法: string String.fromCharCode(index);
参数: index指传入任意的整数。
返回值: 返回Unicode 数值对应的字符串

<script>
    console.log( String.fromCharCode( 97 ) );//a
    console.log( String.fromCharCode( 65 ) );//A
</script>

加密解密的小例子

5.indexOf

作用: 返回 指定值 在调用该方法时字符串首次出现的位置。
语法: number string.indexOf((searchValue [, fromIndex]));
参数: searchValue 指要查找的字符串。fromIndex 指从哪里开始查找,默认值为0。
返回值: 返回 数字。
注意:如果存在 则返回位置,不存在则返回-1。

<script>
    var str="abcabcabc";
    console.log(str.indexOf("a"));//0
    console.log(str.indexOf("b"));//1
    console.log(str.indexOf("z"));//-1

    console.log(str.indexOf("ab"));//0
    console.log(str.indexOf("ac"));//-1

    console.log(str.indexOf("bc",0));//1
    console.log(str.indexOf("bc",-2));//1
    console.log(str.indexOf("bc",18));//-1
</script>

5.lastIndexOf

作用: 返回 指定值 在调用该方法时字符串最后出现的位置。
语法: number string.indexOf((searchValue [, fromIndex]));
参数: searchValue 指要查找的字符串。fromIndex 指从哪里开始查找,默认值为str.length-1。
返回值: 返回 数字。
注意:如果存在 则返回位置,不存在则返回-1。

<script>
        var str="abcabcabc";
        console.log(str.lastIndexOf("a"));//6
        console.log(str.lastIndexOf("b"));//7
        console.log(str.lastIndexOf("z"));//-1

        console.log(str.lastIndexOf("ab"));//6
        console.log(str.lastIndexOf("ac"));//-1

        console.log(str.lastIndexOf("bc",0));//-1
        console.log(str.lastIndexOf("bc",-2));//-1
        console.log(str.lastIndexOf("bc",18));//7
</script>

6.slice

作用: 方法提取字符串中的一部分,并返回这个新的字符串(包含起始位置,不包含结束位置)
语法: string string.slice((star [, end]));
参数: star是指截取的起始位置,end是指截取的结束位置,默认为最后一个字符的位置+1 ( 字符串的长度 )。
返回值: 返回 截取到 的字符串。

注意:

  • 不会根据参数大小,交换参数位置
  • 如果参数中有负值,则处理成从末尾开始数。-1指最后一个元素,-2 指倒数第二个元素。
<script>
    var str="abcabc";
    console.log(str.slice(2));//"cabc"
    console.log(str.slice(0,2));//"ab"
    console.log(str.slice(2,2));//""

    console.log(str.slice(2,-1));//"cab"
    console.log(str.slice(2,-6));//""

    console.log(str.slice(2,1));//""
    console.log(str.slice(-2,-1));//"b"
</script>

7.substring

作用: 方法提取字符串中的一部分,并返回这个新的字符串(包含起始位置,不包含结束位置)
语法: string string.slice((star [, end]));
参数: star是指截取的起始位置,end是指截取的结束位置,默认为最后一个字符的位置+1 ( 字符串的长度 )。
返回值: 返回 截取到 的字符串。

注意:

  • 会根据起始位置和结束位置的大小先进行参数位置的变换
  • 会把负值转换成0
<script>
    var str="abcabc";
    console.log(str.substring(2));//"cabc"
    console.log(str.substring(0,2));//"ab"
    console.log(str.substring(2,2));//""

    console.log(str.substring(2,-1));//"ab"
    console.log(str.substring(2,-6));//"ab"

    console.log(str.substring(2,1));//"b"
    console.log(str.substring(-2,-1));//""
</script>

8.substr

作用: 截取指定 起始位置长度子字符串.
语法: string string.substr(start [, length]);
参数: start :截取的起始位置 。length:截取的字符串长度,默认为字符长度。
返回值: 返回截取到的字符串

<script>
    var str="abcabcabcabc";
    console.log(str.substr(0));//abcabcabcabc
    console.log(str.substr(3));//abcabcabc
    console.log(str.substr(3,5));//abcab

    console.log(str.substr(3,-1));""
</script>

9.toLowerCase

1.toLowerCase
作用: 把字符串全部转成小写
语法: string string.toLowerCase();
返回值: 返回转成小写的字符串。

2.toUpperCase
作用: 把字符串全部转成大写
语法: string string.toUpperCase();
返回值: 返回转成大写的字符串。

<script>
        var str = "liangZhiFANG";
        console.log( str.toLowerCase() );//"liangzhifang"
        console.log( str.toUpperCase() );//"LIANGZHIFANG"
        console.log( str );//"liangZhiFANG"
        console.log( "LoveJs".toLowerCase() );//"lovejs"
</script>

10.split

作用: 通过一个指定的字符串 把原字符串分割成一个数组
语法: array string.split([separator] [, limit])
参数:separator是指分割符。limit指定最多分割的数量,可以理解为数组长度,默认为全部。
返回值:返回一个数组。
注意:没有分割符的时候(没有传入参数),整个字符串将作为一个整体保存到数组中。 用分割符分割的时候,分割符会在被删除了在传入数组。

<script>
        var str="我爱,你,们";
        console.log(str.split(","));//["我爱","你","们"]
        console.log(str.split(",",2));//["我爱","你"]
        console.log(str.split());//["我爱,你,们"]
        console.log(str.split("mmm"));//["我爱,你,们"]
        console.log(str.split(""));//["我", "爱", "," , "你", "," ,"们"]
    </script>
    原文作者:梁志芳
    原文地址: https://segmentfault.com/a/1190000014972093
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞