js多个参数(追加参数)
/**
* 多个参数
* @param fn
* @param args
* @param scope
*/
function multipleArguments(fn,args,scope){
if(Object.prototype.toString.call(args)!="[object Array]"){
if(args!=null&&args!=undefined){
args = [args];
}
}
return function(){
//追加args,之后逐次追加参数
/*
第1次调用:
args+第1次调用传入的参数
第2次调用:
args+第1次调用传入的参数+第2次调用传入的参数
第3次调用:
args+第1次调用传入的参数+第2次调用传入的参数+第3次调用传入的参数
*/
/*
for(var i=0;i<arguments.length;i++){
args.push(arguments[i]);//将参数追加到args中
}
fn.call(scope||window,args);
*/ //只追加传入的args
/*
第1次调用:
args+第1次调用传入的参数
第2次调用:
args+第2次调用传入的参数
第3次调用:
args+第3次调用传入的参数
*/
var _args = [].concat(args);
for (var i = 0; i < arguments.length; i++){
_args.push(arguments[i]);
}
fn.call(scope||window,_args);
} }
具体使用例子如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title></title>
<script type="text/javascript" src="./js/MultipleArguments.js"></script>
<script type="text/javascript">
window.onload=initFn; /**
* 初始化函数
*/
function initFn(){
console.info('123456~~~');
var addFn = multipleArguments(add,[1,2]);
var result = addFn(3,4);
console.info('result:',result); var result1 = addFn(5,6);
console.info('result1:',result1); var result2 = addFn(7,8);
console.info('result2:',result2); var addFn1 = multipleArguments(add,[9,10]);
var result3 = addFn1(11,12);
console.info('result3:',result3); var result4 = addFn(13,14);
console.info('result4:',result4);
} /**
*加法
*/
function add(){
console.info("arguments:",arguments);
var result = 0;
for(var i=0;i<arguments.length;i++){
result+=arguments[i];
}
return result;
}
</script>
</head>
<body> </body>
</html>
js多个参数(追加参数)的更多相关文章
- javascript序列化表单追加参数
js序列化表单后追加参数方式: 追加参数:token,status var data = $.param({"token":token, "status":st ...
- 【问题】Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数
[问题]Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数. [解决]直接对变量加引号,如: <button onclick="deleteProduct('@ ...
- 从js向Action传中文参数出现乱码问题的解决方法
Action获取jsp表单中的中文参数,只要整个项目都采用UTF-8编码格式都不会出现乱码问题:但JSP中用到JS,并从JS向Action传中文参数,就会出现中文乱的现象 做项目的时候,发现A ...
- js 替换 当前URL 特定参数
js 替换 当前URL 特定参数 2012-12-24 20:45:53| 分类: JS&JQuery |举报 |字号 订阅 //替换指定传入参数的值,paramName为参数,repl ...
- js中settimeout方法加参数
js中settimeout方法加参数的使用. 简单使用看w3school 里面没有参数调用, 例子: <script type="text/javascript"> ...
- js获得url内的参数
/** * js获得url内的参数 * 返回值: string or undefined * 使用方法:$_GET['from'] */ var $_GET = (function() { var s ...
- Js把URL中的参数解析为一个对象
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8" /> <title&g ...
- js 获取url中的参数 修改url 参数 移除url参数
js 获取url中的参数 修改url 参数 移除url参数 var jsUrlHelper = { getUrlParam : function(url, ref) { var str = " ...
- js获取url传递得参数
方法一:正则法 function getQueryString(name) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(& ...
随机推荐
- 排序算法-插入排序(Java)
package com.rao.linkList; import java.util.Arrays; /** * @author Srao * @className InsertSort * @dat ...
- 【JZOJ5740】【20190706】幻想世界
题目 小 $\omega $ 想要进行烟火表演,她一开始有\(n\)颗彗星和\(n\)颗陨石 如果小 \(\omega\) 有\(i\)颗彗星而没有陨石,那么她会消耗\(i\)颗彗星并得到\(a_i\ ...
- git中ignore文件配置
在项目中我们有一些文件是不能公开的,或者说是每个人需要单独配置的,那么这个时候使用 git 就不能上传这些文件.此时就需要对 .gitignore 文件进行配置. git 的忽略原则:参考 廖雪峰的g ...
- readfile,read,createReadStream函数
这三个函数使用前都需要引入fs模块(var fs= require(“fs”) ) readfile:读取文件内容的异步函数,readFile方法是将要读取的文件内容完整读入缓存区,再从该缓存区中读取 ...
- 下载mqtt.fx
#下载mqtt.fxhttp://www.jensd.de/apps/mqttfx/1.7.1/
- linux脚本中有source相关命令时的注意事项
写这个问题起因是因为一个同学去的java一键脚本环境变量设置问题, [root@localhost u01]# more 1.sh #!/bin/bash grep -q "export J ...
- keepass口令管理实践
语言修改 加入插件 插件的学习及应用
- 简单认识RTLO(Right-to-Left Override)
目录 两行代码实现字符逆序输出 做个假文件 参考 今天在群里看到的用法,RLO是一个微软的中东Unicode字符8238,或者0x202E,可以使后面的字符都变为RTL(阿拉伯语从右往左书写,对我们来 ...
- vue、element-ui开发技巧
1.vue下input文本框获得光标 html: <el-input size="mini" clearable v-model.trim="addOrEditDa ...
- 【插件】【idea】Maven Helper查找maven依赖图
File->Settings->Plugins 打开pom文件,地下有一个Dependency Analyzer选项