首页
沸点
课程
APP
AI用量
作品广场
专家标注
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Lodash
订阅
雾之旅人
更多收藏集
微信扫码分享
微信
新浪微博
QQ
28篇文章 · 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]…