首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Lodash
订阅
雾之旅人
更多收藏集
微信扫码分享
微信
新浪微博
QQ
29篇文章 · 0订阅
lodash源码系列——isSymbol
检查value是否是原始Symbol或者对象。 返回true or false。 typeof返回值的类型是字符串,那么这里其实应该是严格相等的,而且用==是会进行隐式的类型转换的,这里没有必要。从规范上来说,也应该是尽量减少==的使用,使用===。个人认为,这里应该使用===…
Lodash源码分析-drop.js
第二个参数是截取的起始位置的索引。 该方法返回一个被截取后的数组。 该方法首先会声明一个局部变量length来存放第一个数组参数的长度,若为空数组则长度为0。 之后判断变量length是否为真true(在这里变量length会被转换为布尔Boolean类型,数字类型的值在为0时…
lodash源码分析之isArguments
isArguments 用来判断某个值是否为类 arguments 对象。 如果某个值为类对象(使用 isObjectLike 判断),并且调用 Object.prototype.toString 返回的值为 [object Arguments] 时,则为类 arguments…
学习 lodash 源码整体架构,打造属于自己的函数式编程类库
感兴趣的读者可以点击阅读。 underscore源码分析的文章比较多,而lodash源码分析的文章比较少。原因之一可能是由于lodash源码行数太多。注释加起来一万多行。 分析lodash整体代码结构的文章比较少,笔者利用谷歌、必应、github等搜索都没有找到,可能是找的方式…
lodash源码分析之List缓存
在之前的《lodash源码分析之Hash缓存》介绍过用 Hash 做缓存的情况,在这篇文章中介绍过,lodash 是想要实现和 Map 一样的接口。 Hash 其实是用对象来做缓存,但是对象有一个局限,它的 key 只能是字符串或者 Symbol 类型,但是 Map 是支持各种…
惰性求值——lodash源码解读
lodash受欢迎的一个原因,是其优异的计算性能。而其性能能有这么突出的表现,很大部分就来源于其使用的算法——惰性求值。 本文将讲述lodash源码中,惰性求值的原理和实现。 以下是How to Speed Up Lo-Dash ×100? Introducing Lazy E…
内功修炼之lodash—— clone&cloneDeep(一定有你遗漏的js基础知识)
本文实现方法都是看效果倒推实现方法,并进行一些拓展和思考,和源码无关。lodash这个库在这里更像一个题库,给我们刷题的 时代在进步,人生苦短,我选择语法糖和api。面临大数据的性能瓶颈,才是考虑命令式编程的时候 lodash除了常用的数据类型拷贝外,还会对各种奇怪对象进行拷贝…
lodash源码分析之获取数据类型
我们都知道,可以借用 Object 原型上的 toString 方法来获取数据的类型。 baseGetTag 利用的也是这一特性,其返回的结果如 [object String] 这样的形式,调用方式如下: 在第三步的时候,会调用 ToObject 来转换成对象,而转换成对象后,…
lodash源码分析之baseFindIndex中的运算符优先级
baseFindIndex 是内部方法,其作用类似于ES6的 findIndex,查找符合条件的第一个元素的索引。 baseFindIndex 除了从前向后查找外,还可以从后向前查找。 这次读源码我们从里往外看。 从代码中很容易看到,predicate 是传递进来的函数,在 b…
内功修炼之lodash——function系列(面试高频考点)
本文实现方法都是看效果倒推实现方法,并进行一些拓展和思考,和源码无关。lodash这个库在这里更像一个题库,给我们刷题的 时代在进步,人生苦短,我选择语法糖和api。面临大数据的性能瓶颈,才是考虑命令式编程的时候 _.bind(func, thisArg, [partials]…