簡體   English   中英

創建將接受多個參數的函數

[英]create function that will accept multiple arguments

我正在嘗試修改我的函數以接受不同數量的參數,例如,參數可以是(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();
  })

你近了
您只需要從.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
  });
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM