常用的处理字符串内置对象

119 阅读2分钟

常用处理字符串的内置对象和方法

  1. toString() 其他类型转化为字符串
  2. string() 其他类型转换为字符串的函数
  3. +"" 隐式将其他数据类型转换为字符串
  4. toLowerCase() 将字符串转换为小写
  5. toUpperCase() 将字符串转换为大写
  6. indexOf(检索的内容,开始的索引) 返回要检索字符串的索引,没找到就返回-1
  7. lastIndexOf(检索的内容,开始的索引) 从背后检索字符串的索引,没找到就返回-1
  8. charAt(index) 返回字符
  9. charCodeAt(index) 返回字符相应的ASCII
  10. substr(字符串索引,截取长度) 截取字符串
  11. split("") 将字符串转换为数组

toString其他类型转化为字符串

        let num = 123
        num = num.toString()

string()其他类型转换为字符串的函数

        let num = 123
        num = String(num)

+"" 隐式将其他数据类型转换为字符串

        let num = 123
        num = num + "" 

toLowerCase()将字符串转换为小写

let str = 'aBcDeFgHIjK'
let newStr1 = str.toLowerCase()

css实现:text-transform:lowercase;

toUpperCase()将字符串转换为大写

let str = 'aBcDeFgHIjK'
let newStr2 = str.toUpperCase()

css实现:text-transform:uppercase;

indexOf(检索的内容,开始的索引)返回要检索字符串的索引,没找到就返回-1

        let str = 'abcdsonggesajdkljsakldjasldsa'
        let i = str.indexOf('a', 2)
        console.log(i)

面试小案例检索a出现的次数和索引多少

    //查找字符串中a元素出现的次数
        let str = 'abcdsonggesajdkljsakldjasldsa'
        // indexOf('要检索的字符串') 如果返回-1 则代表没有找到
        let num = 0
        let i = str.indexOf("a")
        while (i !== -1) {
            console.log(`出现的位置${i}`)        
            i = str.indexOf("a", i + 1)
            num++

        }
        console.log(num);

lastIndexOf(检索的内容,开始的索引)从背后检索字符串的索引,没找到就返回-1

        let str = 'abcdsonggesajdkljsakldjasldsa'
        let i = str.lastIndexOf('a')
        console.log(i)

charAt(index)返回字符 --------------一次返回一个

let str1 = 'ligoudan zhangcuihua zhaotiezhu'
let strChar = str1.charAt(2)

面试小案例判断字符串中每个字母出现的次数

方法一:

 let str1 = 'ligoudanzhangcuihuazhaotiezhu'
        let obj = {}
        for (let i = 0; i < str1.length; i++) {
            let chars = str1.charAt(i)
            if (obj[chars]) {
                obj[chars]++
            } else {
                obj[chars] = 1
            }

        }
        console.log(obj)

方法二:

 //判断字符串每个字母出现的次数
        let str = "sawtdgvxsdaasdw"
        let obj = {}
        let i = 0
        let arr = str.split("")
        arr.forEach((v) => {
            if (obj[v] === undefined) {
                obj[v] = 1
            }
            else {
                obj[v] = obj[v] + 1
            }
        })

        console.log(obj)

charCodeAt(index)返回字符串ASCII码

        let str = 'ligoudanzhangcuihuazhaotiezhu'
        let charCode = str.charCodeAt(2)
        console.log(charCode)

substr(字符串索引,截取长度) 截取字符串

        let str = 'ligoudanzhangcuihuazhaotiezhu'
        let subStr = str.substr(0, 5)
        console.log(subStr)

split("") 将字符串转换为数组

        let str1 = "李-狗-蛋"
        let arr = str1.split('-')
        console.log(arr)