木a
2016-11-07 22:37
function add2(x,y,z) {
var x=1;
y=2;
z=3;
sum=x+y+z;
document.write(sum);
}
这样有结果,
var x=1;
y=2;
z=3;
function add2(x,y,z) {
sum=x+y+z;
document.write(sum);
}
这样就没结果
我明白了,参数的赋值不能这么赋,这样只是定义了变量赋值。
有全局变量和局部变量之分:
如下:
var n=10; //全局变量
function demo(){
var i=20; //局部变量
z=100; //全局变量(只有当此函数被调用时它才是全局变量,函数没有被调用时它是不存在不起作用的);
}
alert(n); //你在alert()里面分别输入n,z,i 这三个参数做测试就明白了;
demo();
注:当demo()方法被调用了时,n和z是会弹出结果的,i是不出结果;
当demo()方法没被调用,只有n会出结果,z和i都不会出结果;
如果要i出结果,就要在函数内写输出并调用此函数;
如:
function demo(){
var i=20;
alert(i);
}
demo();
function add2(x,y,z) {
sum=x+y+z;
document.write(sum);
}
你写了一个函数,那你最后有没有调用这个函数呢?
要让这个函数起作用,就必须要调用它,有两种方法:
1、是直接调用:
var x=1;
y=2;
z=3;
function add2() {
sum=x+y+z;
document.write(sum);
}
add2();
2、通过HTML调用 :
var x=1;
y=2;
z=3;
function add2() {
sum=x+y+z;
document.write(sum);
}
<input onclick='add2()'>
第二个x,y,z是参数
是你没调用吧 , add2(1,2,3)调用试试。变量有全局和局部之分,但是函数参数不需要定义为全局变量或局部变量,直接传递就行。
奥,这里和变量没有关系,对函数中参数的赋值必须在function{}函数体中吗?
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题