我只是试图让这里看到更好的理解/函数参数 在功能确认:函数的参数以及它们是如何工作
function newFunction(data, status){
将功能特别适用于数据和状态变量?
我不太明白这些论点是如何工作的。
我只是试图让这里看到更好的理解/函数参数 在功能确认:函数的参数以及它们是如何工作
function newFunction(data, status){
将功能特别适用于数据和状态变量?
我不太明白这些论点是如何工作的。
基本场景
当定义了一个函数,该()
区域用于输入。这些输入被映射到在被发送的数据。
function newFunction(data, status){
}
newFunction(1,2);
在这种情况下,data
将被分配的1
的值,并status
将为的newFunction
范围被分配的2
值。
Missmatched输入
然而,它并不总是直接映射。如果发送的参数较少,则未分配的输入变量将变为undefined
。
function newFunction(data, status){
}
newFunction(1);
在这种情况下,data
将被分配的1
的值,并status
将为的newFunction
范围被分配的undefined
值。
参数对象
内部的newFunction
范围,也有访问像称为arguments
对象阵列。
function newFunction(data, status)
{
var args = arguments;
}
newFunction(1);
在这种情况下,变量args
将举行arguments
对象。在那里你可以检查args.length
看到只有1个参数被发送。 args[0]
会给你这个参数值,在这种情况下是1
。
功能对象
的函数可以被制成与new
关键字的对象。通过在函数上使用new
关键字,可以创建一个Function对象。一旦函数对象被创建,this
可能被用来引用当前的函数对象而不是全局窗口。
function newFunction(data,status){
if(this instanceof newFunction){
//use as a Function object
this.data = data;
}else{
//use as a normal function
}
}
var myNewFunction = new newFunction(1);
在这种情况下,myNewFunction
现在持有的功能对象的引用,并且可以作为通过点标记或索引的对象进行访问。 myNewFunction["data"]
和myNewFunction.data
现在无论是持有1
这意味着功能接受都data
和status
参数。程序员调用功能可按(你)需要调用函数时提供的参数
让我们看一个简单的例子(也称为参数):
function add(x, y) {
return x + y;
}
函数这里有两个数字,将它们加在一起,然后返回结果。现在,作为程序员,您可以随时添加两个数字,而无需复制功能,或者在需要应用程序执行相同功能时复制/粘贴。
最重要的是,您使用的另一位程序员可以一起添加两个数字,而不用担心如何操作,他们可以调用您的函数。
编辑:调用函数的工作原理如下
var num1 = 10;
var num2 = 15;
var z = add(num1, num2); //z = 25
......或者它应该这样做。它不必如果它不想! –
@RobertGrenier所以这些变量是在这里创建的,目前尚未定义? –
@pst所以基本上这个步骤只是创建一个变量,然后我可以在函数内使用/定义它,是的? –
function newFunction(data, status){ ... function code ... }
这是一个名为newFunction函数的定义的Javascript的价值。 您可以将参数传递给函数。这些变量是数字或字符串,函数应该用来执行某些操作。 当然,函数行为/输出取决于你给它的参数。
我认为你需要更多的上下文..没有jQuery的在你的问题,但JavaScript函数的工作就像子程序大多数编程语言做。 –
这听起来像更多的一般编程问题。没有什么特别的JavaScript或jQuery在这里... – elclanrs
@elclanrs它更像是一个“没有读过教程/书”的情况..(但不是,这不是一般的编程,因为这是非常基本的,然后有一些JavaScript-具体的规则超出了任何形式的“统一”的功能应用操作本身可以有很大的不同) – 2013-01-08 23:42:33