Hefty

Results 107 issues of Hefty

本文为读 lodash 源码的第三百零四篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 依赖 ```javascript import arrayEach from './.internal/arrayEach.js' import baseForOwn from './.internal/baseForOwn.js' import isBuffer from './isBuffer.js' import isObject from './isObject.js' import isTypedArray from './isTypedArray.js' ``` [lodash源码分析之arrayEach](https://github.com/yeyuqiudeng/pocket-lodash/issues/137)...

系列文章
api

本文为读 lodash 源码的第三百零三篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 依赖 ```javascript import baseSet from './.internal/baseSet.js' ``` [lodash源码分析之baseSet](https://github.com/yeyuqiudeng/pocket-lodash/issues/120) ## 源码分析 `setWith` 和 `set` 差不多,但是可以传入自定义设置函数 `csutomizer` 来设置值。 源码如下: ```javascript function setWith(object, path, value, customizer) {...

系列文章
api

本文为读 lodash 源码的第三百零二篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 依赖 ```javascript import baseSet from './.internal/baseSet.js' ``` [lodash源码分析之baseSet](https://github.com/yeyuqiudeng/pocket-lodash/issues/120) ## 源码分析 `set` 可以将值设置到 `object` 指定的属性路径上。 源码如下: ```javascript function set(object, path, value) { return object ==...

系列文章
api

本文为读 lodash 源码的第三百零一篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 依赖 ```javascript import castPath from './.internal/castPath.js' import toKey from './.internal/toKey.js' ``` [lodash源码分析之castPath](https://github.com/yeyuqiudeng/pocket-lodash/issues/70) [lodash源码分析之toKey](https://github.com/yeyuqiudeng/pocket-lodash/issues/71) ## 源码分析 `result` 的作用跟 `get` 差不多,但是当传入的路径 `path` 对应的值是函数时, `result` 会执行这个函数,并且 `this`...

系列文章
api

本文为读 lodash 源码的第三百篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 依赖 ```javascript import map from './map.js' import basePickBy from './.internal/basePickBy.js' import getAllKeysIn from './.internal/getAllKeysIn.js' ``` [lodash源码分析之map](https://github.com/yeyuqiudeng/pocket-lodash/issues/16) [lodash源码分析之basePickBy](https://github.com/yeyuqiudeng/pocket-lodash/issues/298) [lodash源码分析之getAllKeysIn](https://github.com/yeyuqiudeng/pocket-lodash/issues/195) ## 源码分析 `pickBy` 和 `pick` 有点不太一样,`pick`...

系列文章
api

本文为读 lodash 源码的第二百九十九篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 依赖 ```javascript import basePick from './.internal/basePick.js' ``` [lodash源码分析之basePick](https://github.com/yeyuqiudeng/pocket-lodash/issues/299) ## 源码分析 `pick` 可以从 `object` 上将传入的属性上的值取出,得到一个新的对象返回。 源码如下: ```javascript function pick(object, ...paths) { return object == null...

系列文章
api

本文为读 lodash 源码的第二百九十八篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 依赖 ```javascript import basePickBy from './basePickBy.js' import hasIn from '../hasIn.js' ``` [lodash源码分析之basePickBy](https://github.com/yeyuqiudeng/pocket-lodash/issues/298) [lodash源码分析之hasIn](https://github.com/yeyuqiudeng/pocket-lodash/issues/292) ## 源码分析 `basePick` 是实现 `pick` 的内部方法。 源码如下: ```javascript function basePick(object, paths)...

系列文章
internal

本文为读 lodash 源码的第二百九十七篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 依赖 ```javascript import baseGet from './baseGet.js' import baseSet from './baseSet.js' import castPath from './castPath.js' ``` [lodash源码分析之baseGet](https://github.com/yeyuqiudeng/pocket-lodash/issues/72) [lodash源码分析之baseSet](https://github.com/yeyuqiudeng/pocket-lodash/issues/120) [lodash源码分析之castPath](https://github.com/yeyuqiudeng/pocket-lodash/issues/70) ## 源码分析 `basePickBy` 是实现 `pick` 和...

系列文章
internal

本文为读 lodash 源码的第二百九十五篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 源码分析 `mapValue` 和 `mapKey` 类似,但是 `iteratee` 返回的新值会替换原来 `object` 上对应的 `value` 值。 源码如下: ```javascript function mapValue(object, iteratee) { object = Object(object) const result = {}...

系列文章
api

本文为读 lodash 源码的第二百九十四篇,后续文章会更新到这个仓库中,欢迎 star:[pocket-lodash](https://github.com/yeyuqiudeng/pocket-lodash) gitbook也会同步仓库的更新,gitbook地址:[pocket-lodash](https://www.gitbook.com/book/yeyuqiudeng/pocket-lodash/details) ## 源码分析 `mapKey` 的作用是遍历 `object` 上可枚举的 `key` ,`iteratee` 会返回一个新的属性值来替换原来的属性。 源码如下: ```javascript function mapKey(object, iteratee) { object = Object(object) const result = {} Object.keys(object).forEach((key) => {...

系列文章
api