搜索结果
查询Tags标签: lodash,共有 25条记录-
【跟着大佬学JavaScript】之lodash防抖节流合并
前言 前面已经对防抖和节流有了介绍,这篇主要看lodash是如何将防抖和节流合并成一个函数的。 初衷是深入lodash,学习它内部的好代码并应用,同时也加深节流防抖的理解。这里会先从防抖开始一步步往后,由简入繁,直到最后实现整个函数。 这里纯粹自己的理解,以及看了很…
2022/7/10 14:50:42 人评论 次浏览 -
一天一个仿lodash函数实现-union
union将传入的参数数组进行合并,生成一个新数组,虽然这种用map来做可能快一些吧,但不能保证元素加入的顺序,所以可以考虑通过遍历的方式,不断从收集的数组里查找遍历到的元素是否存在,不存在则加入(打不过就加入)。 function union(...arrs){return arrs.reduce((…
2022/7/1 6:49:41 人评论 次浏览 -
一天一个仿lodash函数实现-remove、reverse和slice
又遇到简单的函数实现了 remove 移除数组中命中的元素,并返回移除元素组成的数组,会改变原数组。 和pullAt有点像 function remove(arr, iteratee){const removes = [];for(let i=0;i<arr.length;i++){if(iteratee(arr[i])){removes.push(arr[i]);arr.splice(i, 1);i…
2022/6/19 23:23:35 人评论 次浏览 -
18_webpack代码分离
什么是代码分离 代码分离(Code Splitting)是webpack一个非常重要的特性 他主要的目的是将代码分离到不同的bundle中,之后我们可以按需加载,或者并行加载这些文件 比如默认情况下,所有的JS代码(业务代码,第三方依赖,展示没有用到的模块)在首页全部都加载就会影响首页的…
2022/5/3 6:14:19 人评论 次浏览 -
[React] Tree Shake Your React Application Modules
Sometimes one line of code can eliminate 50% of your bundle size. As youll see in this video, we can remove "dead code" from modules we are working with by correctly tree shaking. Tree shaking is a term commonly used in the JavaScript contex…
2022/5/1 23:18:36 人评论 次浏览 -
day01_手写Lodash中的memoize记忆函数
手写Lodash中的memoize记忆函数// 求圆的面积 function getArea(r) {console.log(执行了getArea);return Math.PI * r * r } // 记忆函数 function memoize(fn) {let cache = {}return function () {let key = JSON.stringify(arguments)cache[key] = cache[key] || fn.ap…
2022/4/7 6:23:43 人评论 次浏览 -
day01_Lodash
Lodash纯函数的功能库英文官网:https://lodash.com/中文网:https://www.lodashjs.com/lodash 是一个纯函数的功能库,提供了对数组、数字、对象、字符串、函数等操作的一些方法
2022/4/7 6:21:28 人评论 次浏览 -
nodejs原型链污染复现
lodash从污染到rce 以code-breaking2018中的thejs为例搭环境 在package中修改以下代码污染 然后到baseMerge中继续跟进:发现存在原型链污染的条件:键可控且值可修改。 相同的原理,利用lodash.mergeWith,lodash.set,lodash.setWith也可造成原型链污染。rce过程 利用lo…
2022/1/25 17:34:18 人评论 次浏览 -
Node.js基础入门
nodejs1.node.js是什么: node.js是一个基于Chrme V8 引擎的js运行时。 2.使用node.js的好处: node.js使得js语言能做更多的事情,而不仅仅是网页。npm1.npm是什么: npm 是 node package manager,即nodejs软件包管理者。 2.npm的官网: https://www.npmjs.com 有几百万的…
2021/12/8 12:46:43 人评论 次浏览 -
Node.js基础入门
nodejs1.node.js是什么: node.js是一个基于Chrme V8 引擎的js运行时。 2.使用node.js的好处: node.js使得js语言能做更多的事情,而不仅仅是网页。npm1.npm是什么: npm 是 node package manager,即nodejs软件包管理者。 2.npm的官网: https://www.npmjs.com 有几百万的…
2021/12/8 12:46:43 人评论 次浏览 -
ts 限制输入框只能输入一个 emoji 表情
我们知道 emoji 的长度不定,可以是两个字符,还可以是多个字符。它是用 unicode 编码的。所以我们不能直接利用长度来截取字符串中第一个 emoji。 比较方便的方法是借助 lodash 库的 toArray 函数。 它里面每个 emoji 就是长度为 1。 安装 npm i lodash.toarray代码 impo…
2021/12/3 23:16:40 人评论 次浏览 -
ts 限制输入框只能输入一个 emoji 表情
我们知道 emoji 的长度不定,可以是两个字符,还可以是多个字符。它是用 unicode 编码的。所以我们不能直接利用长度来截取字符串中第一个 emoji。 比较方便的方法是借助 lodash 库的 toArray 函数。 它里面每个 emoji 就是长度为 1。 安装 npm i lodash.toarray代码 impo…
2021/12/3 23:16:40 人评论 次浏览 -
vite概念和设计思想
vite概念和设计思想esm和webpack的对比 在html以module(esm)的方式引入js模块在html项目中引入第三方lodash-es库,yarn add lodash-es,然后使用: (如何找到入口文件:node_modules/库名/package.json的main字段就是入口文件) 引入lodash.js的时候把其他模块引入了,…
2021/11/3 23:41:12 人评论 次浏览 -
vite概念和设计思想
vite概念和设计思想esm和webpack的对比 在html以module(esm)的方式引入js模块在html项目中引入第三方lodash-es库,yarn add lodash-es,然后使用: (如何找到入口文件:node_modules/库名/package.json的main字段就是入口文件) 引入lodash.js的时候把其他模块引入了,…
2021/11/3 23:41:12 人评论 次浏览 -
关于vue中使用lodash的防抖用法
需求:手风琴效果(mouseover的函数防抖) 1.安装: npm install --save lodash 2.引入:import debounce from "lodash.debounce"; 3.使用:1 <div class="home_box">2 <div3 class="home_menu"4 …
2021/10/31 23:10:58 人评论 次浏览