在 Javascript 中,我们如何称呼函数的参数(变量或其值)?
What do we call the argument (variable or its value) of a function in Javascript?
好的,让我们举个例子:
function student(name,age){
document.write("I am " + name + "and I am " + age + " years old." );
}
var student_name = "Divyansh";
var student_age = 17;
student(student_name,student_age);
// 现在我的问题是我们如何称呼函数 student 的参数:
(a) 是变量: student_name & student_age 分别,
(b) 还是变量包含的值:divyansh & 17 分别
PS- 我也在 codechef 上发布了同样的问题,但似乎没有人有兴趣回答我愚蠢和幼稚的问题。但是,我该怎么办?我正在尝试先通过书头学习 Javascript 自己 javascript 编程,并且由于对其中一个问题的疑问而感到震惊,请帮助。
在您的情况下,您将两个名为 student_name 和 student_age 的参数传递给分别包含值 Divyansh 和 17 的学生函数。
函数的参数是调用函数的表达式。
在这种情况下,调用函数时将两个表达式作为参数:student_name 和 student_age。
这些表达式在计算时产生一个值:变量的值。
使用两个参数调用该函数。这些参数是 变量 。并且该函数获取这些变量的 值 并将其分配给其局部变量,即 'name' 和 'age'.
你用过console.log()方法吗?你有没有想过它需要的最大参数数量是多少?答案是尽可能多。
举个例子。
function print(x,y){
console.log(x);
console.log(y);
}
好吧,这是一个简单的函数,接受 2 个参数并在控制台中打印它们。
假设我有 5 个参数传递给函数 print。 a、b、c、d、e。你将如何修改打印方法?可能是这样的。 (不要这样写程序,没有效果)
function print(a,b,c,d,e){
console.log(a);
console.log(b);
console.log(c);
console.log(d);
console.log(e);
}
如果我传递 100 个参数,如 a1、a2、... a100,怎么样?如果我传递 1000 个参数怎么办?你不能写 1000 console.log 语句来打印它们。所以你会想到一个for循环来打印所有的参数。
等等!
如何访问 for 循环内的所有参数,除非它们是数组(使用 for 循环或 for-in 迭代)或对象(使用for-in迭代)?
现在对象 "arguments" 来了。这是由 javascript 为您声明的每个函数隐式创建的内置对象。
这家商店是做什么的?它以对象的形式存储您传递给函数的所有参数。
参数{
0:一个,
1:乙,
2:丙,
3:d,
4: 电子
};
现在我有了类似对象的东西,它保存了传递给函数的所有参数,在 for-in 循环中访问它们会更容易。现在我的打印方法将如下所示:
function print(a,b,c,d,e,f) {
for (var prop in arguments) {
console.log(arguments[prop]);
}
}
这将遍历参数对象的所有属性并打印存储在每个 属性 中的值。
每个 属性 个参数对象存储了什么?
fn参数对象-属性值存储在属性
a 0 value of parameter a
b 1 value of parameter b
c 2 value of parameter c
d 3 value of parameter d
e 4 value of parameter e
f 5 value of parameter f
如果我理解正确你的问题,你想知道你是否应该说
I called student
with student_name
and student_age
.
或
I called student
with "Divyansh"
and 17
.
对吗?
嗯,这取决于整个上下文,有时可以同时使用两者。
这在某种程度上是一个意见问题,但我会尽力证明我的意见。
我认为您应该通过名称引用参数(即 student_name
和 student_age
if
- 它们的价值对你所说的没有意义。
不必要的信息通常会导致混淆。
- 它们的价值未知。
- 他们的价值很长,你之前提到过。
Math.pow((5*x+7*y-35*v*x*z)/(42*m/35*k+47*f+99*l), 35*22*88*k)
之类的长值往往会使书写的文本变得凌乱,并且连续多次说出来真的很烦人,因此您需要按名称引用它们。
当参数的值很重要时,你应该通过它们的值来引用参数,例如当你有一个错误,只发生在某些值被传递给你的函数时,而不是其他一些。
现在两者之间存在差距,我相信您可以同时使用两者。
对于那种情况,我会应用黄金法则
越短越好.
如果您有以下代码:
var name = "Divyansh";
console.log(name);
var name = "Marc";
console.log(name);
var name = "Jon Skeet";
console.log(name);
那么我相信以下所有陈述都是完全有效的:
I called console.log
three times with name
as argument.
或
I called console.log
three times with "Divyansh"
, "Marc"
and "Jon Skeet"
as argument.
但这实际上取决于您需要或想要提供多少信息。
好的,让我们举个例子:
function student(name,age){
document.write("I am " + name + "and I am " + age + " years old." );
}
var student_name = "Divyansh";
var student_age = 17;
student(student_name,student_age);
// 现在我的问题是我们如何称呼函数 student 的参数:
(a) 是变量: student_name & student_age 分别,
(b) 还是变量包含的值:divyansh & 17 分别
PS- 我也在 codechef 上发布了同样的问题,但似乎没有人有兴趣回答我愚蠢和幼稚的问题。但是,我该怎么办?我正在尝试先通过书头学习 Javascript 自己 javascript 编程,并且由于对其中一个问题的疑问而感到震惊,请帮助。
在您的情况下,您将两个名为 student_name 和 student_age 的参数传递给分别包含值 Divyansh 和 17 的学生函数。
函数的参数是调用函数的表达式。
在这种情况下,调用函数时将两个表达式作为参数:student_name 和 student_age。 这些表达式在计算时产生一个值:变量的值。
使用两个参数调用该函数。这些参数是 变量 。并且该函数获取这些变量的 值 并将其分配给其局部变量,即 'name' 和 'age'.
你用过console.log()方法吗?你有没有想过它需要的最大参数数量是多少?答案是尽可能多。
举个例子。
function print(x,y){
console.log(x);
console.log(y);
}
好吧,这是一个简单的函数,接受 2 个参数并在控制台中打印它们。
假设我有 5 个参数传递给函数 print。 a、b、c、d、e。你将如何修改打印方法?可能是这样的。 (不要这样写程序,没有效果)
function print(a,b,c,d,e){
console.log(a);
console.log(b);
console.log(c);
console.log(d);
console.log(e);
}
如果我传递 100 个参数,如 a1、a2、... a100,怎么样?如果我传递 1000 个参数怎么办?你不能写 1000 console.log 语句来打印它们。所以你会想到一个for循环来打印所有的参数。
等等!
如何访问 for 循环内的所有参数,除非它们是数组(使用 for 循环或 for-in 迭代)或对象(使用for-in迭代)?
现在对象 "arguments" 来了。这是由 javascript 为您声明的每个函数隐式创建的内置对象。
这家商店是做什么的?它以对象的形式存储您传递给函数的所有参数。
参数{ 0:一个, 1:乙, 2:丙, 3:d, 4: 电子 };
现在我有了类似对象的东西,它保存了传递给函数的所有参数,在 for-in 循环中访问它们会更容易。现在我的打印方法将如下所示:
function print(a,b,c,d,e,f) {
for (var prop in arguments) {
console.log(arguments[prop]);
}
}
这将遍历参数对象的所有属性并打印存储在每个 属性 中的值。
每个 属性 个参数对象存储了什么?
fn参数对象-属性值存储在属性
a 0 value of parameter a
b 1 value of parameter b
c 2 value of parameter c
d 3 value of parameter d
e 4 value of parameter e
f 5 value of parameter f
如果我理解正确你的问题,你想知道你是否应该说
I called
student
withstudent_name
andstudent_age
.
或
I called
student
with"Divyansh"
and17
.
对吗?
嗯,这取决于整个上下文,有时可以同时使用两者。
这在某种程度上是一个意见问题,但我会尽力证明我的意见。
我认为您应该通过名称引用参数(即 student_name
和 student_age
if
- 它们的价值对你所说的没有意义。
不必要的信息通常会导致混淆。 - 它们的价值未知。
- 他们的价值很长,你之前提到过。
Math.pow((5*x+7*y-35*v*x*z)/(42*m/35*k+47*f+99*l), 35*22*88*k)
之类的长值往往会使书写的文本变得凌乱,并且连续多次说出来真的很烦人,因此您需要按名称引用它们。
当参数的值很重要时,你应该通过它们的值来引用参数,例如当你有一个错误,只发生在某些值被传递给你的函数时,而不是其他一些。
现在两者之间存在差距,我相信您可以同时使用两者。
对于那种情况,我会应用黄金法则
越短越好.
如果您有以下代码:
var name = "Divyansh";
console.log(name);
var name = "Marc";
console.log(name);
var name = "Jon Skeet";
console.log(name);
那么我相信以下所有陈述都是完全有效的:
I called
console.log
three times withname
as argument.
或
I called
console.log
three times with"Divyansh"
,"Marc"
and"Jon Skeet"
as argument.
但这实际上取决于您需要或想要提供多少信息。