前言
在日常的前端开发中,我们经常会遇到需要判断某个对象某个属性是否存在的情况,这时候可以使用 JavaScript 中的一些内置函数,例如 Object.prototype.hasOwnProperty
,但这些内置函数使用起来不太方便,而且还需要手动判断层级关系,如果有多层嵌套的话,就要写很多重复的代码。因此,可以使用 npm 包 farr-this
来解决这个问题。
什么是 farr-this
farr-this
(全称为 find-and-read-recursive-this
)是一个旨在解决对象属性判断问题的 npm 包。它可以帮助我们快速判断一个对象中的属性是否存在,而且使用起来非常方便,只需要一行代码即可完成。
使用方法
安装
可以使用 npm
命令来安装 farr-this
包:
npm install farr-this --save
引用
当我们安装好 farr-this
后,可以使用以下方式来引用它:
const farrThis = require('farr-this');
函数介绍
farrThis
包中最常用的函数是 getVal
,它的作用是判断对象属性是否存在并返回对应的属性值,如果属性不存在,则返回 null
。
getVal
函数有两个参数,分别是要判断的属性名和要判断的对象。例如:
-- -------------------- ---- ------- ----- --- - - ---- - ---- - ---- ------ ------ - - -- ------------------------------------------ ------
上述示例代码中,我们使用 getVal
函数来判断对象 obj
中的属性 'foo.bar.baz'
是否存在,并返回对应的属性值 'hello world'
。
函数实现原理
farr-this
包中的 getVal
函数的实现原理比较简单,它会将需要判断的属性名拆分为一个个的路径,并依次查找这些路径,直到找到最终的属性值或者中途发现某个属性不存在为止。
总结
对于前端开发中需要频繁进行对象属性判断的场景,使用 farr-this
包可以非常方便地解决这个问题。通过本文的介绍,我们学习了 farr-this
包的安装、引用和使用方法。同时,我们也了解了 farr-this
包的函数实现原理,这对于我们扩展和定制该包的功能也具有一定的指导意义。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6006735b890c4f7277583f35