
JS
JS知识
JokerLuffe
小小白在此做笔记
展开
-
JSON.parse报错 SyntaxError:Unexpected end of JSON input
代码】JSON.parse报错SyntaxErrorUnexpectedendofJSONinput。原创 2022-07-26 11:14:29 · 2430 阅读 · 0 评论 -
发布NPM包
包目录结构:必须包含index.js,package.json,README.md三个文件 index.js 这里写自己要是显得功能然后module.exports暴露出去 // 这是包的入口文件 const date = require('./src/dateFormat') const escape = require('./src/htmlEscape') module.exports = { ...date, ...escape } package.json 这是包的信息原创 2022-03-25 11:21:49 · 842 阅读 · 0 评论 -
什么是防抖与节流,怎么实现
函数节流是:在固定的时间内触发事件,每隔n秒触发一次 函数防抖是:当你频繁触发后,n秒内只执行一次 1.防抖 n秒内函数只能执行一次,如果在n秒内这个事件再次被触发的话,那么会重新计算时间 function debounce(fn) { let timeout = null; // 创建一个标记用来存放定时器的返回值 return function () { clearTimeout(timeout); // 每当用户输入的时候把前一个 setTimeout clear 掉原创 2022-03-14 19:09:01 · 174 阅读 · 0 评论 -
柯里化(Curry)
普通纯函数需要多次传递重复的值 // 普通纯函数 function chackAge(min, age) { return age >= min } console.log(chackAge(18,20)); console.log(chackAge(18,24)); console.log(chackAge(22,24)); 当一个函数有多个参数的时候先传递一部分参数调用它(这部分参数以后永远不会变) 然后在返回一个函数接受剩余的参数,返回结果 // 函数柯里化 function che原创 2022-03-12 15:58:44 · 410 阅读 · 0 评论 -
模拟实现内部函数
// 模拟memoize方法的实现 function memoize(fn){ let cache = {} return function(){ let key = JSON.stringify(arguments) cache[key] = cache[key] || fn.apply(fn,arguments) return cache[key] } } let getAreaWhthMemory = memoize(getAr原创 2022-03-12 10:05:37 · 142 阅读 · 0 评论 -
数据筛选filter()
filter()是一个过滤函数,返回符合条件的元素的新数组,结果为true就会放入数据,为false就过跳过。filter((value,key,arr)=>{})参数value是每个元素,key是数组索引,arr则是整个数组。 let arr1 = [1,2,3]; let arr2 = arr1.filter((value,key,arr) => { console.log(value) // 1,2,3 console.log(key) // 0,1,2原创 2021-10-29 18:10:49 · 1595 阅读 · 0 评论