Javascript中函数名.length属性用法分析(对比arguments.length)

当我们在JavaScript中定义一个函数时,函数名上有一个属性length,它用来获取函数定义时的形参个数。这个length属性可以作为函数的一个属性被调用。

与之相似的,我们可以使用arguments.length来获取函数调用时实际传入参数的个数。下面将对这两者的用法进行详细的讲解,同时提供相应的示例。

Javascript中函数名.length属性

声明函数时,可以添加形参列表,函数名.length属性返回形参的个数。

示例1:普通函数

function myFunction(a, b, c) {
  return a + b + c;
}
console.log(myFunction.length); //输出3

在上面的代码中,将一个包含三个参数的函数命名为myFunction。属性长度(length)返回的是参数数量。在上面的示例中,length返回3,也就是参数的个数。

示例2:使用默认参数

function myFunction(a, b=2, c=3) {
  return a + b + c;
}
console.log(myFunction.length); // 输出1

在上面的代码中,将一个包含三个参数的函数命名为myFunction, 但是其中有两个参数设置了默认值。属性长度(length)返回的是参数数量,不包含有默认值的参数。在上面的示例中,函数的参数长度是1。

arguments.length

arguments.length是函数内部可用的一个特殊对象,它返回函数调用时实际传入参数的个数。

示例1:

function myFunction() {
   console.log("arguments.length:", arguments.length);
}
myFunction();            // 0
myFunction(1);           // 1
myFunction(1, 2);        // 2
myFunction(1, 2, 3);     // 3

在上面的示例中, myFunction() 不带参数返回0, myFunction(1) 返回1, myFunction(1, 2)myFunction(1, 2, 3) 分别返回2和3。

示例2:

function sum() {
  let result = 0;
  for (let i = 0; i < arguments.length; i++) {
    result += arguments[i];
  }
  return result;
}
console.log(sum(1, 2, 3, 4)); // 输出10

在上面的代码中,我们定义了一个求和函数sum,通过arguments.length来动态计算传入参数个数,便于函数的通用性和高度的可扩展性。

总结:

length属性用来返回函数定义时的形参个数,arguments.length用来返回函数调用时实际传入参数的个数,它们的区别在于 length只取得形参数量,不包括有默认参数的数量,而 arguments.length 取得的是函数调用时实际传递的参数数量。无论是在函数定义还是调用时,这两个属性都具有重要的作用。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Javascript中函数名.length属性用法分析(对比arguments.length) - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • JavaScript中的设计模式 单例模式

    JavaScript设计模式之单例模式 什么是单例模式 单例模式是一种常用的软件设计模式,用于保证系统中一个类只有一个实例,避免多个实例造成的资源浪费,同时也能够方便对该实例的控制和管理。 在JavaScript中,单例模式通常是通过对象字面量或者构造函数来实现的。 示例1:对象字面量实现单例模式 var Singleton = { obj: null, g…

    JavaScript 2023年6月10日
    00
  • 利用JavaScript脚本实现滚屏效果的方法

    下面是实现滚屏效果的方法的完整攻略: 利用JavaScript脚本实现滚屏效果的方法 基本思路 我们可以通过监听鼠标或者触摸事件,根据移动的距离来控制页面滚动的位置,从而实现滚屏效果。具体的步骤如下: 监听鼠标或者触摸事件,获取开始移动时的位置和移动的距离。 根据移动的距离计算需要滚动的距离。 利用window.scrollTo()函数来滚动页面的位置。 处…

    JavaScript 2023年6月10日
    00
  • 一些常用的JS功能函数(2009-06-04更新)

    一些常用的JS功能函数是一篇介绍常用JS函数的文章,内容涵盖了字符串操作、数组操作、日期操作、基本算法等方面。本文将结合实例进行详细讲解。 字符串操作函数 字符串去首尾空格函数 trim() 这个函数可以去除字符串头尾的空格,使得字符串更加统一。 示例: let str = ‘ hello world! ‘; str = str.trim(); consol…

    JavaScript 2023年5月18日
    00
  • php json中文编码为null的解决办法

    下面是详细的讲解: 问题描述 在PHP中,对于中文编码的JSON数据,在进行json_encode()时可能会出现某些中文字符串被编码为null的情况,这会导致JSON数据无法正常解析。如何解决这个问题呢? 解决办法 指定json_encode()函数的选项参数 我们可以在json_encode()函数的第二个参数中设置选项参数,如下所示: $data = …

    JavaScript 2023年6月1日
    00
  • js遍历子节点子元素附属性及方法

    遍历子节点和子元素是JavaScript和DOM中常用的操作之一。以下是详细讲解“js遍历子节点子元素附属性及方法”的完整攻略。 1. 获取父元素中的所有子节点 在DOM中,获取父元素中的所有子节点可以使用childNodes属性。该属性会返回一个列表,其中包含父元素中的所有子节点。但是需要注意,这个列表可能包含空格和文本节点,因此我们需要对其进行处理,只获…

    JavaScript 2023年6月10日
    00
  • 让浏览器DOM元素最后加载的js方法

    关于让浏览器DOM元素最后加载JS方法,这主要是为了确保在运行JS之前,页面的DOM元素已经全部加载完毕,从而避免因为JS找不到需要操作的元素而产生错误。接下来我将为大家介绍两种方法。 方法一:使用window.onload window.onload是指在当前页面中所有的元素(图片、音频、视频等多媒体元素)加载完毕后,再去执行window.onload事件…

    JavaScript 2023年6月10日
    00
  • Web安全测试之XSS实例讲解

    Web安全测试是指对Web应用程序进行安全风险评估的过程。其中,XSS(Cross-site scripting)是一种常见的Web安全漏洞,攻击者通过注入脚本代码实现攻击。以下是对“Web安全测试之XSS实例讲解”的完整攻略: 第一步:寻找输入点 首先根据Web应用程序的业务逻辑找到需要输入的点,例如登录、注册、用户评论等。在这些输入点中,可能会存在输入过…

    JavaScript 2023年6月11日
    00
  • JavaScript 中for/of,for/in 的详细介绍

    当我们需要遍历一个对象或数组的时候,可以使用 JavaScript 中的 for/of 或 for/in 循环语句。但是它们的使用方式和适用范围有所不同,本文将带你详细介绍这两种循环的语法规则和使用场景。 for/of for/of 循环主要用于遍历可迭代对象(Iterable),例如数组、Map、Set 等。 for/of 循环语法: for (varia…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部