zoukankan      html  css  js  c++  java
  • JavaScript中的String对象方法与属性汇总

    JavaScript中的String对象方法与属性汇总

    String对象主要用于文本字符串处理。

    本篇文章共介绍了32种方法后续如有补充会随时更新

    属性

    constructor

    String对象的构造函数,是创建该对象的函数引用。

    length

    字符串长度

    prototype

    String对象的原型,可以在上面添加属性和方法

    var a = 'abc'
    a.constructor.prototype.abc = 'aaa'
    a.constructor.prototype.sat = ()=> 'hello'
    log(a.abc) // aaa
    log(a.say()) // hello
    

    方法

    charAt()

    说明:返回在指定位置的字符。

    语法:str.charAt(位置)

    代码:

    var str = 'hello word'
    log(str.charAt(1))
    // 打印 e
    

    charCodeAt()

    说明:返回在指定的位置的字符的 Unicode 编码。

    语法:str.charCodeAt(位置)

    代码:

    var str = 'hello word'
    log(str.charCodeAt(1))
    // 打印 101
    

    concat()

    说明:连接两个或更多字符串,并返回新的字符串。

    语法:str.concat(str1, str2)

    代码:

    var str = 'aaa'
    var str1 = 'bbb'
    var str2 = 'ccc'
    log(str.concat(str1, str2))
    // 打印 aaabbbccc
    

    fromCharCode()

    说明:将 Unicode 编码转为字符

    语法:String.fromCharCode(65)

    代码:

    log(String.fromCharCode(65))
    // 打印 A
    

    indexOf()

    说明:返回某个指定的字符串值在字符串中首次出现的位置。

    语法:str.indexOf(字符串)

    代码:

    var str = 'hello'
    log(str.indexOf('e'))
    // 打印 1
    

    includes()

    说明:查找字符串中是否包含指定的子字符串。返回true或false

    语法:str.includes(字符串)

    代码:

    var str = 'hello word'
    log(str.includes('word'))
    // 打印 true
    

    match()

    说明:查找找到一个或多个正则表达式的匹配。

    语法:str.match(正则)

    代码:

    var str = 'aabbccdd'
    log(str.match(/a/g))
    // 打印 ["a", "a"]
    log(str.match(/a/))
    // 打印 ["a", index: 0, input: "aabbccdd"]
    

    repeat()

    说明:复制字符串自身指定次数,并将它们连接在一起返回。

    语法:str.repeat(复制次数);

    代码:

    var str = 'abc'
    log(str.repeat(3))
    // 打印 abcabcabc
    

    replace()

    说明:在字符串中查找匹配的子串, 并替换与正则表达式匹配的子串。

    语法:str.replace(searchValue,newValue)

    代码:

    var str = 'aabbcc'
    log(str.replace('b', 't'))
    // 打印 aatbcc
    log(str.replace(/b/g, 't'))
    // 打印 aattcc
    

    说明:查找与正则表达式相匹配的值的位置。

    语法:str.search(字符串)

    代码:

    var str = 'aabbcc'
    log(str.search(/c/))
    // 打印 4
    

    slice()

    说明:提取字符串的片断,并在新的字符串中返回被提取的部分。

    语法:slice(start, end)

    代码:

    var str="Hello world!"
    log(str.slice(2,9))
    // 打印 llo wro
    

    split()

    说明:把字符串分割为字符串数组。

    语法:str.split(字符串)

    代码:

    var str = 'hello wrod'
    log(str.split(''))
    // 打印 ["h", "e", "l", "l", "o", " ", "w", "r", "o", "d"]
    log(str.split('lo'))
    // 打印 ["hel", " wrod"]
    

    startsWith()

    说明:查看字符串是否以指定的子字符串开头。返回ture或false

    语法:str.startsWith(字符串)

    代码:

    var str = 'hello wrod'
    log(str.startsWith('hello'))
    // 打印 true
    log(str.startsWith('llo'))
    // 打印 false
    

    endsWith()

    说明:查看字符串是否以指定的子字符串结尾。返回ture或false

    语法:str.endsWith(字符串)

    代码:

    var str = 'hello wrod'
    log(str.startsWith('hello'))
    // 打印 true
    log(str.startsWith('llo'))
    // 打印 false
    

    substr()

    说明:从起始索引号提取字符串中指定数目的字符。第二个参数为要截取的字符个数,如果不填默认截取到字符的结尾,不会改变源字符串。

    语法:str.substr(start , length)

    代码:

    var str = 'hello wrod'
    log(str.substr(1, 3))
    // 打印 ell
    log(str.substr(1))
    // 打印 ello wrod
    

    substring()

    说明:提取字符串中两个指定的索引号之间的字符。截取从一个位置到另一个位置之间的字符片段。如果省略第二个参数,那么返回的子串会一直到字符串的结尾。

    语法:string.substring(from, to)

    代码:

    var str = 'hello wrod'
    log(str.substring(1))
    // 打印 ello wrod
    log(str.substring(1, 3))
    // 打印 el
    

    toLowerCase()

    说明:把字符串转换为小写。

    语法:str.toLowerCase()

    代码:

    var str = 'AAAbbbCCCdddEEE'
    log(str.toLowerCase())
    // 打印 aaabbbcccdddeee
    

    toUpperCase()

    说明:把字符串转换为大写。

    语法:str.toUpperCase()

    代码:

    var str = 'AAAbbbCCCdddEEE'
    log(str.toUpperCase())
    // 打印 AAABBBCCCDDDEEE
    

    trim()

    说明:去除字符串两边的空白

    语法:str.trim()

    代码:

    var str = '   AAAbbbCCCdddEEE   '
    log(str.trim())
    // 打印 AAAbbbCCCdddEEE
    

    toLocaleLowerCase()

    说明:根据本地主机的语言环境把字符串转换为小写。

    语法:str.toLocaleLowerCase()

    代码:

    var str = 'AAAbbbCCCdddEEE'
    log(str.toLocaleLowerCase())
    // 打印    aaabbbcccdddeee
    

    toLocaleUpperCase()

    说明:根据本地主机的语言环境把字符串转换为大写。

    语法:str.toLocaleUpperCase()

    代码:

    var str = 'AAAbbbCCCdddEEE'
    log(str.toLocaleUpperCase())
    // 打印 AAABBBCCCDDDEEE
    

    valueOf()

    说明:返回某个字符串对象的原始值。valueOf() 方法通常由 JavaScript 在后台自动进行调用,而不是显式地处于代码中。

    语法:str.valueOf()

    代码:

    var str = 'AAAbbbCCCdddEEE'
    log(str.valueOf())
    // 打印 AAAbbbCCCdddEEE
    

    toString()

    说明:返回一个字符串。

    语法:str.toString()

    代码:

    var str = 'AAAbbbCCCdddEEE'
    log(str.toString())
    // 打印 AAAbbbCCCdddEEE
    

    padStart()

    说明:从头部填充字符串。(ES6)

    语法:str.padStart(targetLength, 字符串)

    代码:

    var str = '123'
    log(str.padStart(5, '0'))
    // 打印 00123
    

    padEnd()

    说明:在尾部填充字符串。(ES6)

    语法:str.padEnd(targetLength, 字符串)

    代码:

    var str = '123'
    log(str.padEnd(5, '0'))
    // 打印 12300
    

    raw()

    说明:raw()是一个模板字符串的标签函数,是用来获取一个模板字符串的原始字面量值。

    callSite一个模板字符串的“调用点对象”

    ...substitutions任意个可选的参数,表示任意个内插表达式对应的值。templateString模板字符串。

    语法:String.raw(callSite, ...substitutions)

    代码:

    var str = 'abcd'
    log(String.raw`hel${str}lo`)
    // 打印 helabcdlo
    

    fromCodePoint()

    说明:用于从 Unicode 码点返回对应字符,但是这个方法不能识别码点大于0xFFFF的字符。

    语法:String.fromCharCode(0x20BB7)

    代码:

    String.fromCharCode(0x20BB7)
    // "ஷ"
    

    codePointAt()

    说明:JavaScript 内部,字符以 UTF-16 的格式储存,每个字符固定为2个字节。能够正确处理 4 个字节储存的字符,返回一个字符的码点。

    语法:str.codePointAt(length)

    代码:

    let  str = 'abc'
    const res = str.codePointAt(0)
    console.log('打印', res)
    

    normalize()

    说明:原字符与重音符号的合成,两个字符合成一个字符,用来将字符的不同表示方法统一为同样的形式,这称为 Unicode 正规化。

    语法:normalize方法可以接受一个参数来指定normalize的方式,参数的四个可选值如下。

    • NFC,默认参数,表示“标准等价合成”(Normalization Form Canonical Composition),返回多个简单字符的合成字符。所谓“标准等价”指的是视觉和语义上的等价。
    • NFD,表示“标准等价分解”(Normalization Form Canonical Decomposition),即在标准等价的前提下,返回合成字符分解的多个简单字符。
    • NFKC,表示“兼容等价合成”(Normalization Form Compatibility Composition),返回合成字符。所谓“兼容等价”指的是语义上存在等价,但视觉上不等价,比如“囍”和“喜喜”。(这只是用来举例,normalize方法不能识别中文。)
    • NFKD,表示“兼容等价分解”(Normalization Form Compatibility Decomposition),即在兼容等价的前提下,返回合成字符分解的多个简单字符。

    代码:

    
    

    trimStart()

    说明:消除字符串头部的空格。

    语法:str.trimStart()

    代码:

    let  str = '   abc   '
    const res = str.trimStart()
    console.log('打印', res)
    // 打印 'abc   '
    

    trimEnd()

    说明:消除尾部的空格。

    语法:str.trimEnd()

    代码:

    let  str = '   abc   '
    const res = str.trimEnd()
    console.log('打印', res)
    // 打印 '   abc'
    

    matchAll()

    说明:方法返回一个正则表达式在当前字符串的所有匹配.

    语法:str.matchAll(RegExp)

    代码:

    let  str = 'hello word'
    const res = str.matchAll(/b/g)
    console.log('打印', res)
    // 打印 Object [RegExp String Iterator] {}
    
  • 相关阅读:
    《新下级学》第八章第八、九节——责任总论等
    《新下级学》第八章第五、六、七节——信息不透明导致奖金失效等
    《新下级学》第八章第四节——不信任沟通
    《新下级学》第八章第三节——信任沟通
    《新下级学》第八章第二节——沟通工具
    《新下级学》第八章序和第一节——宏观互动
    《新下级学》第七章第五节——互动的陷阱
    《新下级学》第七章第四节——互动的三个频道
    GPS校时设备,GPS对时产品,NTP授时服务器
    北斗授时设备(NTP)在医疗行业的重要性
  • 原文地址:https://www.cnblogs.com/liea/p/12512365.html
Copyright © 2011-2022 走看看