JavaScript arguments是什么

JavaScript arguments是什么

在本文中,我们将详细了解JavaScript中的 arguments 对象。包括什么是JavaScript中的 arguments对象 ,然后我们将讨论使用 arguments 对象的一些程序。

我们将讨论以下几点:

  • JavaScript中的 arguments 是什么
  • arguments对象 相关的程序。

arguments 是一个只在函数内部可用的对象。可以将其视为除了JavaScript中的箭头函数以外的所有函数默认可用的局部变量。

这个对象(arguments)用于访问传递给函数的参数。它只在函数内部可用,我们无法在函数外部访问它。arguments对象允许您访问传递给函数的所有参数。我们可以使用索引访问这些参数。

示例: 让我们通过一个简单的示例来理解arguments:

Javascript

<script> 
    function hello() { 
        console.log(arguments[0]); 
    } 
      
    hello("GFG"); 
</script>

输出:

GFG

解释: 在这个示例中,我们将“GFG”作为参数传递给函数hello()。 如我们所知,可以使用索引从参数对象arguments中访问传递给函数的参数。这类似于使用索引访问数组元素。

由于我们只给函数hello( )传递了一个参数,所以该参数会位于 索引0 。 我们可以使用以下语法来访问它:

arguments[0]

示例: 考虑以下示例:

JavaScript

<script> 
    function hello() { 
        console.log(arguments[1]); 
    } 
      
    hello("GFG"); 
</script>

输出:

undefined

解释: 上面示例的输出是 undefined ,因为我们只传递一个参数给 hello() 函数,这个参数将会位于0号索引位置。但是在这里我们访问的是 arguments[1],这个参数是不存在的。所以它的输出是 undefined

示例: 为了处理上述情况,我们需要 传递两个参数 给 hello() 函数,这样它才能给出正确的输出。

JavaScript

<script> 
    function hello() { 
        console.log(arguments[1]); 
    } 
      
    hello("GFG", "Welcome to all"); 
</script>

输出:

Welcome to all

示例: 使用参数对象的程序。

JavaScript

<script> 
    var arguments = [1, 2, 3]; 
    var a = () => arguments[2]; 
    a(); 
      
    function func(n) { 
        var f = () => arguments[0] + n;  
        return f(); 
    } 
      
    console.log(func(3));  
</script>

输出:

6

解释: 大多数学生会以为输出应该是4。因为我们将n=3作为参数传递给函数func,并且arguments[0] = 1,因为在参数数组的第0个索引位置上我们有1。所以输出应该是(3+1) = 4。但是这不是正确的输出。正确的输出是6。正如我们之前讨论过的,arguments对象是局部于函数的,用来访问传递给它的参数。

因为我们将n=3作为参数传递进去。所以在arguments对象中,我们只有一个变量,即3。而且n=3,因为我们将值3传递给func函数。所以arguments[0]=3(这个arguments不是指的外部数组,而是指的函数内部的arguments对象),n=3。

Total = arguments[0] + n => 3+3 = 6

示例: 通过使用arguments对象找到传递给函数的参数的总和。

Javascript

<script> 
    function func(n) { 
        var sum = 0; 
        for(var i = 0; i < arguments.length; i++) { 
            sum = sum + arguments[i]; 
        } 
        return sum; 
    } 
      
    var s = func(1, 2, 3, 4, 5); 
    console.log("Sum is :" + s); 
</script>

输出:

Sum is :15

示例: 使用arguments对象来找出参数的长度。

JavaScript

<script> 
    function func(n) { 
        console.log("Length is: " + arguments.length); 
    } 
      
    func(1, 2, 3, 4, 5);  
</script>

输出结果:

Length is: 5

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程