• ES6小实验-复习字符串


    字符串用的很频繁,而它的方法也比较多,因此有必要好好的总结下。

    1.字符串观赏方法

      charAt() :访问字符串中的特定字符

    var str = "hello world"
    console.log(str.charAt(1))//e

      该方法接收一个参数,即基于0的字符位置,

      charCodeAt():访问字符串中的特定字符的字符编码

    var str = "hello world"
    console.log(str.charCodeAt(1))//101

      该方法和上面方法很像,只是返回的不是字符,而是字符编码

      indexOf():查找字符的位置,可以传第二个参数作为起始位置

    var str = "hello world"
    console.log(str.indexOf("o"))//4

      lastIndexOf():从字符串尾部开始搜索,可以传第二个参数作为起始位置

    var str = "hello world"
    console.log(str.lastIndexOf("o"))//7

      match():字符串模式匹配,

    var str = "cat,bat,sat,fat"
    var pattern = /.at/g
    var matches = str.match(pattern)
    console.log(matches)//["cat", "bat", "sat", "fat"]

      search():字符串模式匹配,与match不同之处在于它返回的是第一个匹配项的索引

    var str = "cat,bat,sat,fat"
    var pattern = /.at/g
    var matches = str.search(pattern)
    console.log(matches)//0

    2.字符串操作方法 

      concat():将一个或多个字符串拼接起来,原值不变

    var str = "hello "
    var result = str.concat('world')
    console.log(result)//hello world
    console.log(str)//hello 

      slice():截取子字符串,对原字符串不影响,第二个参数还是以0位为起点

    var str = "hello world"
    var result1 = str.slice(3)
    var result2 = str.slice(3,7)
    console.log(result1)//lo world
    console.log(result2)//lo w
    console.log(str)// hello world

      substr():截取子字符串,对原字符串不影响,第二个参数是要截取多少位

    var str = "hello world"
    var result1 = str.substr(3)
    var result2 = str.substr(3,7)
    console.log(result1)//lo world
    console.log(result2)//lo worl
    console.log(str)// hello world

      substring():截取子字符串,对原字符串不影响,第二个参数还是以0位为起点,它与slice()的区别在于当第二个参数为负数时,substring()和substr()会把负数变成0来处理,而slice()会把它和总长度相加来处理,这三个很容易混淆

    var str = "hello world"
    var result1 = str.substring(3,-4)
    var result2 = str.substr(3,-4)
    var result3 = str.slice(3,-4)
    console.log(result1)//hel
    console.log(result2)//“”
    console.log(result3)// lo w

      trim(): 删除前置及后缀的所有空格,原字符串保持不变

    var str = "    hello world    "
    console.log(str.trim())//hello world

      toLowerCase(),toUpperCase():字符串大小写转换

    var str = "hello world"
    console.log(str.toUpperCase())//HELLO WORLD

       replace():第一个参数可以是一个RegExp对象或者一个字符串,第二个参数可以是一个字符串或者一个函数

    var str = "cat,bat,sat,fat"
    var pattern = /at/g
    var result1 = str.replace("at", "ond")
    var result2 = str.replace(pattern, "ond")
    console.log(result1)//cond,bat,sat,fat
    console.log(result2)//cond,bond,sond,fond

      split():基于指定的分隔符将一个字符串分隔成多个字符串,并放在一个数组中

    var str = "red,blue,green,yellow"
    console.log(str.split(","))//["red", "blue", "green", "yellow"]
    console.log(str.split(/[^\,]+/))//["", ",", ",", ",", ""]
  • 相关阅读:
    家谱树 x
    codevs 1231 最优布线问题 x(find函数要从娃娃抓起系列)
    洛谷 P1546 最短网络 Agri-Net x
    codevs 5969 [AK]刻录光盘x
    家谱(gen)x
    [POJ2594]Treasure Exploration(最小路径覆盖变种,floyd算法,匈牙利算法)
    [HDOJ5855]Less Time, More profit(最大权闭合子图,二分,最大流)
    [HDOJ1054]Strategic Game(最小点覆盖,最大二分匹配,HK算法)
    [HDOJ3829]Cat VS Dog(最大独立集)
    [HDOJ3488]Tour(二分图最小匹配,KM算法)
  • 原文地址:https://www.cnblogs.com/fengz/p/6659841.html
Copyright © 2020-2023  润新知