js通过arguments来获取指定参数

时间: 2019-02-02阅读: 1020标签: 参数

通过访问arguments对象的length属性可以获取有多少个参数传递给了函数

如:每次被调用的时候,输出传入其中的参数个数

function doAdd(){
    alert(arguments.length)
}
doAdd()  //0
doAdd(1)  //1
doAdd(1, 2)  //2
doAdd("string", 1) //2


由此,可以利用这一点,函数能够接受任意个参数参数并分别实现适当的功能。

我们在封装函数的时候,会携带不同的参数,我们想要获取指定的参数,可以通过 arguments[ ] 来拿到

function doAdd(){
    if(arguments.length ==1 ){
        alert(arguments[0])
    }else if(arguments.length ==2 ){
        alert(arguments[0] + arguments[1])
    }
 }
 doAdd(1) //   1
 doAdd(1, 2)  // 3


接下来,我们再来看一个例子,arguments对象可以与命名参数一起使用。

function doAdd(num1, num2){
   if(arguments.length ==1 ){
        alert(num1 + arguments[0])
   }else if(arguments.length ==2 ){
       alert(arguments[1] + num2)
   }
}
doAdd(1)  //2
doAdd(1, 2) // 4


这里需要注意的一点是,两个命名的参数和argumens对象一起使用。由于num1和arguments[0]的值形态,他们可以互换使用。

此外,arguments的值要永远与对应命名参数的值保持同步。

function doAdd(num1,num2){
    arguments[1] = 0;
   alert(num1); // 1
    alert(num2);  // 0
    alert(arguments[0])  // 1
   alert(arguments[1]) //  0
}
doAdd(1, 2)


函数重写了第二个参数num2,将第二个参数的值改为0,因为arguments对象的值会反应到对应的命名参数上,所以修改argumens[1]的值也就是修改了num2。


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/1934

关闭

vue中监听路由参数的变化

在vue项目中,假使我们在同一个路由下,只是改变路由后面的参数值,期望达到数据的更新。getDetail()方法中会用到this.id这个参数,在同一页面切换id的值,并不会触发vue的声明周期函数。

javascript如何获取地址栏的参数?

JavaScript在web开发中,不同的页面间经常会需要参数的传递,比如新闻列表和新闻详情页面,怎么绑定不同的id给它们,这时候比较简单的方案就是通过地址栏传输对应的参数。

JavaScript参数传递中值和引用的一种理解

值(value)和引用(reference)是各种编程语言老生常谈的话题,js也不例外。我将剖析一个例子的实际运行过程,跟大家分享我对js参数传递中的值和引用的理解。

vue路由传参页面刷新参数丢失问题解决方案

最近项目中涉及到跨页面传参数和后台进行数据交互,看到需求之后第一反应就是用路由传参来解决;Vue中给我们提供了三种路由传参方式,下面我们一个一个的来看一下:

掌握JS函数中的几种参数形式

函数是一段结合在一起执行特定任务的代码,函数一般使用参数与外部进行交互。要编写简洁高效的JS代码,必须掌握函数参数。在本文中,会使用一些有趣的例子来解释 JS 必须有效地处理函数参数的所有特性。

JS的形参与实参

参数是指由外部传入到函数中的变量,仅作为变量使用,但是该变量可以是任何内容,包括函数。被传入的参数作为私有变量使用,可以被覆盖掉。参数排列是严格按照参数的顺序填入的。JavaScript中函数的参数分为形参和实参。

URLSearchParams_js中快速构造和获取URL查询参数的方法

URLSearchParams 接口定义了一些实用的方法来处理 URL 的查询字符串。URLSearchParams()是个构造函数,将返回一个可以操作查询字符串的对象。

用正则表达式获取URL中的查询参数

url中的所有查询参数可以通过 window.location.search 字段获取,以字符串的形式返回。并有固定的格式 ?param1=value1&param2=value2···,所以可以正则表达式匹配。分析下需要匹配的格式:

JavaScript深入之参数按值传递

ECMAscript中所有函数的参数都是按值传递,也就是,把函数外部的值复制给函数内部的参数,就和把值从一个变量复制到另一个变量一样。js始终是按值传递,在这里称他为共享传递。

你需要了解的前后端传参

前后端传参一般有两种形式:key=value 形式传参(即 parameter 形式);body 形式传参(传 json 数据给后端),如果使用的是 GET 请求,浏览器展示的 Request URL 会自动在路径后面加上 ?a=1&b=2这样的参数,这就是 key=value 形式传参

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!