摘要:
背景:数据表(utf-8格式,含中文)内容导出为csv文件,打开,乱码。 原因:csv默认中文支持ANSI编码,且没有预留修改编码的选项。 解决:那只能我们修改csv的中文编码格式为ANSI了。 右键csv->打开方式->选择“记事本”(此时神奇的发现没乱码了,记事本支持utf-8)->另存为-> 阅读全文
posted @ 2024-11-27 17:32
FAIGEL
阅读(2835)
评论(0)
推荐(0)
memoized函数实现原理:使用一组参数初次调用函数时,缓存参数和计算结果,当再次使用相同的参数调用该函数时,直接返回相应的缓存结果。 memoized函数: 点击查看代码 function memoize(func, hasher) { if (typeof func !== 'function 阅读全文
vue2响应式 响应式: 1.数据必须联动(双向绑定),使用发布订阅模式。 2.需要捕获到数据修改(数据劫持),使用Object.defineProperty 实现: // vue2响应式的实现 // 订阅器模型 let Dep = { clientKist: {},//容器 // 订阅 lis 阅读全文
定义 节流: n 秒内只运行一次,若在 n 秒内重复触发,只有一次生效 防抖: n 秒后在执行该事件,若在 n 秒内被重复触发,则重新计时 防抖 简单版本 const debounce=(func,wait)=>{ let timeout=null return ()=>{ let context 阅读全文
事件循环 同步,异步,宏任务,微任务的执行顺序 1.同步任务和异步任务 JavaScript是单线程执行的语言,在同一个时间只能做一件事情。这就导致后面的任务需要等到前面的任务完成才能执行,如果前面的任务很耗时就会造成后面的任务一直等待。为了解决这个问题JS中出现了同步任务和异步任务。 (1)同 阅读全文
1.promise的概念 a :异步 b:三个状态 等待=>成功\失败(状态不可逆转) const promise =new Promise((resolve,reject)=>{ console.log(1) resolve() console.log(2) }) promise.then(() 阅读全文
1.去重 arr1=[1,1,2,2,3,3,3,4] arr2=[...new Set(arr1)]//[1,2,3,4] 2.去重加合并 (1)复杂 function union(arr1:any, arr2:any) { const setA = new Set(arr1) const s 阅读全文
1.this指向 (1)最外层的this指向window (2)最外层调用函数实际是window调用函数 function a(){ console.log(this) } a() //最外层调用函数,window调用的a函数,this还是指向window (3)谁调用指向谁=>指向的是调用的直 阅读全文
1.对给定数组实现倒排 // 方法一 const numberArray = [ 3, 6, 2, 4, 1, 5 ] numberArray.reverse() //方法二 const numberArray = [ 3, 6, 2, 4, 1, 5 ] const newArr = [] f 阅读全文