明月插件开发js篇:灵活运用多种自定义函数传参方式

更新时间:2024-06-06 23:07:03 来源:互联网 作者:天空
  在明月自定义函数传参方面或者说是js灵活方面,一些玩家受篇幅的限度并不能给出详细的解答。而这一部分又是重中之重,下面由明月大佬天空给大家介绍一下灵活运用多种自定义函数传参方式。

自定义函数简析

  这里对自定义函数的形式作简单的分析,其它篇章会有更加详细的解说。明月的自定义函数主要起到两个重要作用:数据分析与筛选,批量执行。使用自定义函数可以代替post参数中的值或批量执行的值,主要是这两种形式,相必对明月有一定基础的开发者已经知道了。

1、单执行:
  方式:&param={CC:qf_fun()}//这种是单值方式,主要运用js来分析获取需要的结果。这种方式也可以进行循环操作,方法是:上一步获取数据,这一步分析数据,分析处理完后再跳转到上一步,即可实现循环,当所有执行完成后,这一步要进行结束操作。
  应用场景:例如我们对空地实现种植操作,第一步获取地块儿的状态,将地块状态传入第二步,在第二步中使用js自定义函数来判断哪一块儿需要种植,将地块儿返回给参数值。例如:&place={CC:qf_plant({#21:farmstatus})};
2、批量执行:
  方式:&index={*:[CC:qf_hero({#01:hero)]}//这种将{*:}批量操作语法与自定义函数相结合,使用最普遍,因为程序本身就是为了省事。
  应用场景:守卫的上下阵,我们获取某场景的守卫列表时,一般可以在魔法池进入的首个api获取到。url:{!nc}magicquery;post:{ncs}&act=2010058.show数组代码魔法池,pkshow代表竞技场,teamshow代表远征,但这些都是数组的形式出现,如show [72,59,1,2,5,0,0,0]这种形式。因此我们下降时就需要将数组转化为可以被明月处理的形式:{*:72,59,1,2,5}
  js代码:
function qf_hero(hl){
  var hl_length=hl.length;
  var i;
  var new_hero=[];
  for(i=0;i<hl_length;i++){
      if(hl[i]>0){
          new_hero.push(hl[i]);
      }
  }
  return new_hero.join();//join()为字符串分割函数,将数组转化为字符串,在上一篇已经介绍过join()的使用。
}

js参数传递

  在js中进行自定义函数的参数传递时,可以使用三种形式:
1、变量传参:例如 qf_plant(a,b,c,d),这种传方式直观,简单在单执行中可以使用。
2、数组传参:例如 var array=[a,b,c,d];qf_plant(array);这种方式传参时,需要先定义一个数组,相对要麻烦一些,可以在单执行中使用。
3、对象传参:例如 param={*:[CC: var p=new Object(); p.id=[#21:cid]; p.price=[#22:priceList]; qf_plant(p)]};//这种方式可用于批量执行的自定义函数中进行多个参数的传值。
4、消息传值:例如 在函数体qf_plant()中,使用上一步骤的消息传值。并在函数体中统一使用[msg]进行调用。qf_plant(){      var hero=[msg];      }
  以上是由明月大佬天空给大家介绍一下灵活运用多种自定义函数传参方式。欢迎大家前来投稿,分享自己的收获成果。青锋建站,提供专业的高品质网站制作服务,包括多语言网站建设,中英文建站,外贸网站制作,微小程序开发,APP开发,SEO,网络营销,PHP开发,网站建设知名品牌,全国接单,为企业构建强有力的营销平台。

 

转载请注明来源网址:青锋建站-http://www.sjzphp.com/kaifazhe/fuzhu/param_pass_1922.html

电话 15632335515 | 邮箱 943703539@qq.com | QQ 943703539 | 微信 qingfengjianzhan

Copyright © 2016-2026 青锋建站 版权所有