创建将接受多个参数的函数

时间:2017-11-15 09:05:37

标签: javascript function

我试图修改我的函数以接受不同数量的参数,例如参数可以是(poly1,poly2)或(poly1,poly2,poly3)等等。

我遇到的问题是我不确定如何增加变量名称

如何将下面的函数转换为一个接受许多不同参数并循环遍历它们的函数。我希望有一种功能性的方法来做到这一点,而不是在可能的情况下使用for循环

function UseWicketToGoFromGooglePolysToWKT(poly1, poly2, poly3, poly4) {
    var wicket = new Wkt.Wkt();

    wicket.fromObject(poly1);
    var wkt1 = wicket.write();

    wicket.fromObject(poly2);
    var wkt2 = wicket.write();

    wicket.fromObject(poly3);
    var wkt3 = wicket.write();

    wicket.fromObject(poly4);
    var wkt4 = wicket.write();

   return [wkt1, wkt2, wkt3, wkt4];
}

我的尝试

function UseWicketToGoFromGooglePolysToWKT(...args) {
  args.map(item, i => {
    wicket.fromObject(`poly${i}`);
    var wkt + i = wicket.write();
  })

1 个答案:

答案 0 :(得分:2)

你很亲密 您只需要从.write()返回结果,然后返回.map()生成的数组 你也错过了new Wkt.Wkt();电话:

function UseWicketToGoFromGooglePolysToWKT(...args) {
  var wicket = new Wkt.Wkt(); // this was missing

  return args.map(item => {   // return this. Also, the `i` isn't necessary.
    wicket.fromObject(item);  // pass `item` here.
    return wicket.write();    // return instead of variable assignment
  });
}