欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

4.4、includes、startsWith、endsWith

程序员文章站 2022-03-08 20:48:46
...

        /*
            传统上,Javascript只有 indexOf() 方法可用来确定一个字符串是否包含在另一个字符串中.
            es6 又提供了 3 种新方法:

            1. includes()  返回布尔值,表示是否找到了参数字符串
            2. startWith() 返回布尔值,表示参数字符串是否在源字符串的头部
            3. endWith()   返回布尔值,表示参数字符串是否在源字符串的尾部
        */

        var s = '1234567890'

        console.log(s.startsWith('1234'))    // true
        console.log(s.endsWith(0))           // true
        console.log(s.includes('6'))         // true


        // 这三个方法都支持第二个参数,表示开始搜索的位置

        var s = 'Hello world!'
        console.log(s.startsWith('world', 6))  // true
        console.log(s.endsWith('Hello', 5))    // true 前 5 个字符
        console.log(s.includes('Hello', 0))    // true

        // 使用第二个参数 n 时, endsWIth 的行为与其他两个方法有所不同.它针对前 n 个字符,而其他两个方法针对从第 n  个位置到字符串结束位置之间的字符





        /*
            4. repeat() 返回一个新字符串,表示将原字符串重复 n 次
        */ 

        console.log('x'.repeat(3))     //xxx
        console.log('hello'.repeat(2)) //hellohello
        console.log('na'.repeat(0))    // ''

        // 参数如果是小数, 会被x向下取整
        console.log('na'.repeat(2.9))  //nana
        // 如果repeat的参数是负数或者 Infinity,会报错
        // console.log('na'.repeat(Infinity))
        // console.log('na'.repeat(-1))
        // 但如果参数是 0 到 -1 之间的小数,则等同于0, 这是因为会先取整运算.






        /*
            es7 引入了字符串补全长度的功能.
            如果某个字符串不够指定长度,会在头部或者尾部补全.

            padStart()  用于头部补全
            padEnd()    用于尾部补全   
        */

相关标签: es6