JS中操作数组、字符串的速度比较

对相同轻量级的数组和字符串进行检索:

 
const arr = [1, 2, 3, 4, 5, 6, 7, 8, 'q']
const string = '12345678q'
const Q = 'q'
const TIME = 2000000000

setTimeout(() => {
    console.log('arr...')
    console.time('array')
    let res = true
    for (let i = 0; i < TIME; i++) {
        if (arr.indexOf(Q) === -1) {
            res = false
            break
        }
    }
    console.log(res)
    console.timeEnd('array')
})

setTimeout(() => {
    console.log('string...')
    console.time('string')
    let res = true
    for (let i = 0; i < TIME; i++) {
        if (string.indexOf(Q) === -1) {
            res = false
            break
        }
    }
    console.log(res)
    console.timeEnd('string')
})

 

打印结果如下:

 

 

结论:对小内存的数据进行操作,操作字符串比数组快,比如可以在dom的类名中使用className进行检索类名检索,而不是classList

posted @ 2022-06-25 23:09  轮椅人  阅读(232)  评论(0编辑  收藏  举报