如何简化将多个变量传递给带有node / javascript的方法

时间:2018-05-03 11:07:06

标签: javascript node.js

我有一个方法需要传递几个变量,例如

export class MyClass{
  myMethod(a, b, c) {
    // do crazy stuff here
    return a * b * c;
  }
}

我希望通过将方法签名更改为

来简化方法签名
export class MyClass{
  myMethod(alphabetObject) {
    // do crazy stuff here
    return alphabetObject.a * alphabetObject.b * alphabetObject.c;
  }
}

我无法解决如何在node / javascript中创建alphabetObject的问题。如果我在C#中这样做,我会这样做:

public AlphabetObject()
{
   public string A {get; set;}
   public string B {get; set;}
   public string C {get; set;}

   public static GetMyLetters()
   {
      return new AlphabetObject
      {
          A = 1,
          B = 2,
          C = 3
      }
   }
}

有没有办法在Javascript / Node中执行此操作?或者有更好的方法在Javascript / Node中执行此操作吗?

2 个答案:

答案 0 :(得分:1)

看看Destructuring assignment。它可用于从对象中提取值,该对象是使用简单的object literal创建的。

myMethod(alphabetObject) {
    const {a, b, c} = alphabetObject;
    // do crazy stuff here
    return a * b * c;
}

// call like this
myMethod({a: "a thing", b: "b thing", c: "c thing"});

答案 1 :(得分:0)

您可以直接创建JSON对象

alphabetObject = { a:"value", b:"value",c:"value"}

然后你可以通过alphabetObject.a

访问一个值