npm 包 @jamesnimlos/safe-get 使用教程

阅读时长 4 分钟读完

前言

在前端开发中,我们经常需要从深层次的对象中取出值或执行某些操作,但如果对象中的某个属性值为 undefined 或 null ,我们常常会遇到“Cannot read property 'xxx' of undefined”这样的错误。要避免这样的错误,保证代码的健壮性和可靠性就需要用到类似 safe-get 这样的库。

npm 包 @jamesnimlos/safe-get 提供了一种从对象中获取深层次属性时的安全方式。本文将介绍其用法,以及使用过程中的注意事项和效果展示。

安装和使用

安装:

使用:

-- -------------------- ---- -------
----- ------- - ---------------------------------

----- ---- - -
  ----- -
    ----- -------
    ---- ---
    ------- -
      ------------ -
        ---------- -------------- ------------- ----------
        ----------- --------- ------ ---------- ----------
      --
    --
  --
--

----- -------- - ------------- -------------
---------------------- -- ------

----- ---------- - ------------- ----------------------------------------
------------------------ -- ------------

----- --------- - ------------- -------------- -- ------
----------------------- -- ---------

该函数接收两个参数:第一个参数是需要取值的对象,第二个参数是字符串类型的属性路径,可以通过 . 和 [] 来表示对象属性和数组索引。如果在取值的过程中某个属性为 undefined 或 null ,则函数会静默返回 undefined 。

注意事项

  1. 请使用字符串类型的属性路径,不要使用变量或表达式
  2. 属性路径中不要出现空值('' 或 "")或者只有可选属性(?.),这些语法是 ES11 的新特性

效果展示

在使用 safe-get 之前,以下代码运行会报错:

-- -------------------- ---- -------
----- ---- - -
  ----- -
    ----- -------
    ---- ---
    ------- -
      ------------ -
        ---------- -------------- ------------- ----------
        ----------- --------- ------ ---------- ----------
      --
    --
  --
--

----- -------- - ---------------
---------------------- -- --------- ---- -------- ------ -- ---------

使用 safe-get 后,即使对未定义的属性进行取值,也不会导致报错:

-- -------------------- ---- -------
----- ------- - ---------------------------------

----- ---- - -
  ----- -
    ----- -------
    ---- ---
    ------- -
      ------------ -
        ---------- -------------- ------------- ----------
        ----------- --------- ------ ---------- ----------
      --
    --
  --
--

----- -------- - ------------- -------------
---------------------- -- ------

----- ---------- - ------------- ----------------------------------------
------------------------ -- ------------

----- --------- - ------------- -------------- -- ------
----------------------- -- ---------

总结

本文介绍了 npm 包 @jamesnimlos/safe-get 的使用方法及效果展示,希望能够帮助读者更好地理解和使用该库,并在实际开发中提高代码的可靠性和健壮性。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005516381e8991b448ce8d9

纠错
反馈