jajaplus / blog

0 stars 0 forks source link

ARTS 第六周(2019.08.05-2019.08.11) #6

Open jajaplus opened 5 years ago

jajaplus commented 5 years ago

算法

https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/1/array/25/

/**
 * @param {number[]} nums1
 * @param {number[]} nums2
 * @return {number[]}
 */
var intersect = function(nums1, nums2) {
    let sameItemArray = []
    let numsObj1 = {}
    let numsObj2 = {}
    nums1.forEach(item1=>{
        if(numsObj1[item1]){
            numsObj1[item1] = numsObj1[item1] + 1
        }else{
            numsObj1[item1] = 1
        }
    })
    nums2.forEach(item2=>{
        if(numsObj2[item2]){
            numsObj2[item2] = numsObj2[item2] + 1
        }else{
            numsObj2[item2] = 1
        }
    })
    Object.keys(numsObj1).forEach(itemKey =>{
        if(numsObj2[itemKey]){
            const appearTimes = Math.min(numsObj1[itemKey],numsObj2[itemKey])
            let times = 0
            while(times < appearTimes){
                sameItemArray.push(itemKey)
                ++times
            }
        }
    })
    return sameItemArray
}; 

阅读

https://www.freecodecamp.org/news/learn-javascript-closures-in-n-minutes/

webpack分析和优化

webpack在加载失败重新加载的时候会影响原来文件的执行顺序,确定代码对于文件的依赖关系在加载完成后执行不同的代码。就是在处理加载与依赖之间的关系,还要让代码能够按照正常逻辑执行相关功能。(分批执行,保证逻辑完整)

分享(webassembly)

webassembly可以将其他语言编译成webassembly语言。Js可以更加提升,类似于ajax的下一次革新。完善js精度不够的缺陷,浮点数无法精确到很多位数,还有就是会强制的类型转换,让人看着很迷糊。
在采用别人的组件时,最好看看别人提的issue,有时候这个组件可能并不兼容你的环境。Webassembly只有在nodejs8.0版本以上才兼容。