美文网首页
js 常用案例技巧

js 常用案例技巧

作者: 抽疯的稻草绳 | 来源:发表于2021-01-25 15:32 被阅读0次
    1.转换字符串所有字母大小写
    let str = 'adfdf DD ssFF'
    let reverseCase = (str) => {
        let res = [...str].map(item => {
            return item === item.toLowerCase() ? item.toUpperCase() : item.toLowerCase()
        }).join('')
        return res
    }
    console.log(reverseCase(str))  //ADFDF dd SSff
    
    2.字符串首字母转化大写
    let str = 'i am shi niu bi ren'
    let res = str.replace(/\b[a-z]/g, (str) => { return str.toUpperCase() })
    console.log(res) //I Am Shi Niu Bi Ren
    
    3.数组随机排列
    const arr = [2, 4, 5, 6, 1, 7, 8, 9, 0, 3]
    arr.sort((a, b) => {
        return Math.random() - 0.5
    })
    console.log(arr)
    
    4.求数组的最大值
    const arr = [2, 4, 5, 6, 1, 7, 8, 9, 0, 3]
    let res = arr.reduce((pre, cur) => {
        let res = cur > pre ? cur : pre
        return res
    })
    console.log(res)//9
    
    let res2 = Math.max(...arr)
    console.log(res2)//9
    
    5.求数组的随机数
    const arr = [2, 4, 5, 6, 1, 7, 8, 9, 0, 3]
    let getRandomValue = (array) => {
        return array[Math.floor(Math.random() * array.length)]
    }
    console.log(getRandomValue(arr))
    
    
    6.判断字符串是否对称
    let str1 = 'abcdcba'
    let str2 = 'edcabaa'
    
    let compare = (str) => {
        return str.split('').reverse().join('') === str
    }
    console.log(compare(str2)) //false
    
    7.判断数组是否有重复项
    const arr = [11, 2, 2, 33, 11, 88, 33, 99]
    const arr1 = [11, 2, 33, 88, 99]
    
    let repetition = (arr) => {
        return new Set(arr).size !== arr.length
    }
    
    console.log(repetition(arr)) //true
    
    8.统计数组元素出现的次数
    let arr = ["a", "b", "c", "f", "b", "b", " b", "d", "d"]
    
    let count = (arr) => {
        let res = arr.reduce((preArr, curItem) => {
            preArr[curItem] = preArr[curItem] ? preArr[curItem] + 1 : 1
            return preArr
        }, {})
        return res
    }
    
    console.log(count(arr))//{ a: 1, b: 3, c: 1, f: 1, ' b': 1, d: 2 }
    
    9.比较数组基本类型元素是否相同
    let arr1 = [null, 1, 2]
    let arr2 = [undefined, 1, 2]
    
    console.log((arr1.length === arr2.length) && (arr1.every((item, index) => {
        return item === arr2[index]
    })))
    

    相关文章

      网友评论

          本文标题:js 常用案例技巧

          本文链接:https://www.haomeiwen.com/subject/ujwyzktx.html