length属性可返回字符串中的字符数目。而function中length获取为一个函数定义的参数数目。

[1,2,3].length  可以得到 3, "123".length  也可以得到 3,这个略懂js的都知道。

但是  eval.length,RegExp.length,"".toString.length,1..toString.length  会得到什么呢?

分别得到 1,2,0,1,这些数字代表什么呢?

这个是群里很多新人朋友一直问的一个问题,其实函数的 length 得到的是形参个数。
我们来简单看个例子:


function test(a,b,c) {}
test.length // 3

function test(a,b,c,d) {}
test.length // 4

是不是很简单,但是也有特殊的,如果函数内部是通过 arguments 调用参数,而没有实际定义参数的话,length 只会的得到 0。


function test() { console.log( arguments );}
test.length // 0

这个函数确实可以传入参数,而且内部也调用了参数,但是 length 却无法得知传入的参数的个数。
只能在函数执行的时候通过  arguments.length  得到实参个数。


function test() { console.log( arguments.length );}
test(1,2,3); // 输出 3
test(1,2,3,4); // 输出 4

所以函数的 length 属性只能得到他的形参个数,而无法得知实参个数。

最新资讯
李斌的铺张与何小鹏的节俭

李斌的铺张与何小鹏的

在营销上,蔚来汽车创始人李斌像马斯克一样高举高打,其为
新iPad Pro现神秘开孔 Smart Connector或移至底部

新iPad Pro现神秘开孔

国外网站Slashleaks今日曝光了一张疑似新款10.5寸iPad
黄峥才不是罗敏叻

黄峥才不是罗敏叻

今天的拼多多,便是昨天的趣店,现在的黄峥,就是曾经的罗敏
创业、艺术家和量子物理

创业、艺术家和量子物

科学和艺术在山脚下分开行走,最后在美学的山顶相遇。
苹果预定大量中国赴美货运航班 为新iPhone做准备

苹果预定大量中国赴美

据Reddit用户爆料,苹果近期已经定下了未来数周几乎所有
从阿里巴巴高投入预判未来收益

从阿里巴巴高投入预判

亚马逊和阿里巴巴两家公司很像,不是说他们都做电商、云
最新文章
Angular2进阶之如何避免Dom误区

Angular2进阶之如何避

这篇文章主要介绍了Angular2进阶之如何避免Dom误区,小
使用FileReader API创建Vue文件阅读器组件

使用FileReader API创

这篇文章主要介绍了使用FileReader API创建一个Vue的
react 实现页面代码分割、按需加载的方法

react 实现页面代码分

本篇文章主要介绍了react 实现页面代码分割、按需加载
Vue项目分环境打包的实现步骤

Vue项目分环境打包的

这篇文章主要介绍了Vue项目如何分环境打包,实现方法大
vue 组件中slot插口的具体用法

vue 组件中slot插口的

这篇文章主要介绍了vue 中slot 的具体用法,包括子组件
JS遍历DOM文档树的方法实例详解

JS遍历DOM文档树的方

这篇文章主要介绍了JS遍历DOM文档树的方法,结合实例形