函數有全局變量和局部變量之分嗎?
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);
}
這樣就沒結果
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);
}
這樣就沒結果
2016-11-07
舉報
2016-11-10
我明白了,參數的賦值不能這么賦,這樣只是定義了變量賦值。
2016-11-09
有全局變量和局部變量之分:
如下:
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();
2016-11-09
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()'>
2016-11-07
第二個x,y,z是參數
2016-11-07
是你沒調用吧 , ?add2(1,2,3)調用試試。變量有全局和局部之分,但是函數參數不需要定義為全局變量或局部變量,直接傳遞就行。
2016-11-07
奧,這里和變量沒有關系,對函數中參數的賦值必須在function{}函數體中嗎?