代码之家  ›  专栏  ›  技术社区  ›  techie_questie

如何在函数参数中展开数组时检查空数组

  •  -1
  • techie_questie  · 技术社区  · 6 年前

    我在react应用程序中编写了一种方法。在效果.js,我写了一个函数如下-

    export async function getUserDetails(...request) {
      try {
        // TO DO
      } catch (e) {
        // To DO
      } finally {
        // TO DO
      }
    }
    

    我的请求将始终是一个数组,因此我也希望处理这个场景来检查空数组。我试着做下面这样的事情,但这给了我错误。有人能帮我理解我做错了什么吗。

    export async function getUserDetails([...requestPayload] = []) {
      try {
        // TO DO
      } catch (e) {
        // To DO
      } finally {
        // TO DO
      }
    }
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   Zuckerberg    6 年前

    你可以验证 request

    export async function getUserDetails(...request) {
      try {
        // TO DO
        request = !!request && request.length ? request : [];
      } catch (e) {
        // To DO
      } finally {
        // TO DO
      }
    }
    
        2
  •  0
  •   Anurodh Singh    6 年前

    如果确定接收的是数组,则可以直接检查长度。

    这样地,

    export async function getUserDetails(...request) {
      try {
          if(request.length){
              // TO DO
          }
      } catch (e) {
        // To DO
      } finally {
        // TO DO
      }
    }