js方法之间的调用之——传参方法

在最近项目需求中发现,完成一些功能的时候总是要调很多结构类似的方法,写起来很繁琐,所以就想写一个“万能”方法,是的代码更简洁。即:把一个方法作为参数传给这个“万能”方法,让它去执行你给定的方法,就类似于ajax中success/error方法传参,总是传入一个方法体。

####1.将方法作为参数

  代码:
  var a = function(){
    console.info("我成功执行了...");
  }
  var excuteFunc = function(funcName){
    funcName();
  }
  excuteFunc(a);

  控制台输出:
    我成功执行了...

  上面我们执行把a方法作为参数传给excuteFunc方法,用excuteFunc执行了a方法,但是如果a方法也含有参数呢,看下面的例子
####2.含参数的方法作为参数

  代码:
  var b = function(b){
    console.info("我成功执行了"+b);
  }
  var setFunc = function(fName,p){
    fName(p);
  }
  setFunc(b,"b方法");

控制台输出:
  我成功执行了b方法

  上例中的setFunc方法的第一个参数是要调用方法的句柄,第二个参数是要调用方法的参数,如果是多个依次列出即可

####3一个定时刷新数据的使用场景

  var getData = function(url){
    $.post(url,function(result){
      //逻辑代码...
    });
  }

  var getData1...
  .
  .
  .

  var setTimeFresh = function(fName,time,url){
    setInterval(fName,time,url);
  }

  setTimeFresh(getData,3000,url);//3秒获取依次数据刷新页面
  setTimeFresh(getData1,10000,url1);

  上例通过调用setTImeFresh方法去定时刷新指定数据,从而达到页面部分数据定时刷新的职能

小白菜又来献丑,勿怪!

时间: 2024-12-20 11:34:59

js方法之间的调用之——传参方法的相关文章

js方法用来获取路径传参上所带的参数

//js方法用来获取路径传参上所带的参数 function GetQueryString(param) { var reg = new RegExp("(^|&)" + param + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) { return r[2]; } return null;

spring的几个传参方法

[email protected] 通过URI template 样式映射时,使用@PathVariable <script type="text/javascript">$('#setButton').click(function() { $("#removeId").val(spId); $("#toolBarForm").attr("action","/test/"+$("#id

在自定义的js验证规则中调用magento的VarienForm方法验证表单

js部分<script type="text/javascript"> //<![CDATA[ var loginForm = new VarienForm('login-form', true); $('login-email').observe('keypress', bindLoginPost); $('login-password').observe('keypress', bindLoginPost); function bindLoginPost(evt)

webview的使用以及js调用OC传参

webview如何想要js和oc交互,需要使用代理方法 ,并且需要和后台协定规则 -(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{ NSString *url = request.URL.absoluteString; NSLog(@"========%@&quo

JS完成页面跳转并传参的方法|附加:循环遍历对象

此方法只能传递较少参数 方法如下: <a href='page/index.html'>跳转</a> 以上是正常写法,如果要传参按一下写法: <!--参数写在?后面,多个参数用&隔开,下面传的参数为name=lemon,age=18--> <a href='page/index.html?name=lemon&age=18'></a> 当跳转到页面的时候这个页面的地址栏就会跟你写的那个一样,这时候你只需要获取地址栏的内容并进行采取

js实现静态页面跳转传参

最近有个项目: 存静态web服务,一个新闻页面列表出所有新闻摘要信息,然后通过点击新闻详情访问到该新闻的详情页面: 新闻展示的页面通过ajax请求接口获取到新闻的摘要信息,预计想通过id的方式访问到新闻详情页面: 如果动态实现跳转非常简单,静态文件跳转...想了一下是否能实现在静态文件的后面加上请求的id呢?比如动态情况http://news.com/?new_id=1: 静态请求src="news_content.html?new_id=1" 最后查资料还是能实现的: 特别声明:Po

wx.navigateBack传参方法

一.传参页面代码 var pages = getCurrentPages();   //当前页面 var prevPage = pages[pages.length - 2];    //上一页面 prevPage.setData({ //直接给上一页面赋值 id:27, }) wx.navigateBack({ //返回上一页面 delta:1, }) 二.接收传参页面代码(代码写在onShow方法内) var that = this; var pages = getCurrentPages(

java 在方法中新建线程,传参和加锁详解

在实际开发中,往往在基本两三种创建线程的方法之外,还用到一个简单的创建线程调用方法的情况,代码如下: public void deleteRedisData(RedisKey redisKey){ new Thread(new Runnable() { @Override public void run() { deleteRedisByRedisKey(redisKey); } }).start(); } protected synchronized void deleteRedisByRed

js动态绑定click事件时function传参问题

今天碰到了这样一个问题,我在javascript中动态创建了一个button, 然后我想给改button添加click事件,绑定的function想要传入一个变量参数, 一开始我想直接通过函数传参传进来,然而不知道为什么,click事件无法正常响应, 最后发现可以这么做,将需要传入的参数加入button的属性中,然后通过getAttribute()获得: 1 function add_book_panel(infor){ 2 //在这个函数中进行DOM元素操作,需要传入参数infor 3 - 4