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

函数参数[duplicate]中的Javascript奇怪语法

  •  -1
  • az2902  · 技术社区  · 5 年前

    我正在学习vue,在定义函数时遇到了这种奇怪的语法,我很好奇它叫什么,在哪里可以了解更多

    register({commit}, credentials){
    }
    

    为什么周围有括号 commit ? 这不应该很简单吗:

    register(commit, credentials){
    }
    

    在周围放置括号的目的是什么 犯罪 变量

    1 回复  |  直到 5 年前
        1
  •  1
  •   Nick    5 年前

    这是对象分解分配。您可以在MDN上阅读以下内容: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

    基本上,函数的第一个参数是一个具有 commit 所有物通过分解结构,可以从对象中提取该属性。下面是一个正在使用的(但不在函数参数中)解构的示例:

    const obj = {
      commit: "Hi there"
    }
    
    const { commit } = obj;
    console.log(commit);
    // "Hi there"