javascript学习笔记的函数对象

javascript学习笔记的函数对象
在Javascript中,函数函数是对象。

js中没有重载方法

在Javascript中,没有一个方法(函数)重载的概念。

实例:

复制代码代码如下所示:

函数添加(数字)

{

警报(号码+ 20);

}

添加函数(数量、编号)

{

警报(号码+ 30);

}

添加(10);

网页中的子弹框显示了40。

它表明,虽然第二种方法是两个参数,但它仍然被称为。

在交换两种方法的顺序后,弹丸盒显示了30个,可以看出,无论参数多少,都是同名的后面的方法。

你如何解释这种现象

这是因为函数声明实际上是构建一个对象:

复制代码代码如下所示:

函数添加(数字)

{

警报(号码+ 20);

}

*

上述函数相当于:

var =函数(数字)

{

警报(号码+ 20);

}

* /

添加函数(数量、编号)

{

警报(号码+ 30);

}

*

上述函数相当于:

VaR加=功能(数量、编号)

{

警报(号码+ 30);

}

* /

添加(10);


通过这种方式,添加实际上指的是它后面的对象,而分配给方法调用的参数将按顺序分配给表单参数。在此之后未分配的参数是未定义的。

当Javascript函数调用时,没有严格的参数数要检查。参数的数量小于参数的个数。这是可能的,未分配的参数是未定义的值未定义。

参数的数量大于参数的数量,因此只能使用前面的参数,并且不使用多个参数。

函数对象

在Javascript中,有一个函数对象,而所有的自定义函数都是函数对象类型。

函数对象接收的所有参数都是字符串类型。最后一个参数是要执行的函数体,而前面的参数是函数真正需要接收的参数。

实例:

复制代码代码如下所示:

var =新函数()

var =新函数()

添加(10, 30);


隐藏对象的争论

在Javascript中,每个函数都有一个隐式对象参数,它们代表实际传递给函数的参数。

参数与函数的形式参数及其数目无关。

参数有一个有用的属性,长度,用来表示参数的长度,可以用来模拟函数的重载:

实践的例子:

复制代码代码如下所示:

(number1,number2)功能添加

{

警报(参数,长度);

警报(参数{ 0 });

警报(参数{ 1 });

警报(参数{ 2 });

}

添加(2, 3, 4);

2()函数

{

如果(arguments.length = 1)

{

警报(参数{ 0 });

}

如果(arguments.length = 2)

{

警报(参数{ 0 } +参数{ 1 });

}

如果(arguments.length = 3)

{

警报(参数{ 0 } +参数{ 1 } }参数{ 2 });

}

}

(3)2;

(3, 4)2;

(3, 4, 5)2;


每个函数对象都有一个长度属性,该属性表示函数预期接收的参数的格式。

它不同于函数的参数,并arguments.length代表参数的函数的数量却受到。

实例:

复制代码代码如下所示:

VaR加=功能(num,num2,小键盘数字3)

{

警报(NUM + num2 +小键盘数字3);

}

警报(添加长度);输出3

添加(1, 2, 3);

VaR ADD2 =功能()

{

}

警报(2。长度); / /输出0

tag:函数对象学习笔记电脑软件Javascript

相关内容