我有這個非常簡單的事情,這是行不通的。發生什麼事?據我已閱讀教程,這應該輸出4 ...正確的語法返回變量並再次使用它(javascript)
function sum(a,b) {
var result = a + b;
return result;
}
sum(2,2);
var test = sum();
alert(test); // shouldn't this return "4"?
我有這個非常簡單的事情,這是行不通的。發生什麼事?據我已閱讀教程,這應該輸出4 ...正確的語法返回變量並再次使用它(javascript)
function sum(a,b) {
var result = a + b;
return result;
}
sum(2,2);
var test = sum();
alert(test); // shouldn't this return "4"?
更改此:
sum(2,2);
var test = sum();
要這樣:
var test = sum(2,2);
第一個代碼不是技術只是錯誤它只是沒有做你想做的事情。你正在用合適的值調用sum函數,但從不將它設置爲任何變量的返回值,所以它只會被拋棄。你似乎覺得價值會「粘」到這個功能上,而事實並非如此。 (一些基本的語言都可以使它看起來這樣,雖然,也許這就是你的誤解的來源。)
你的第二個電話是基本的
var test = sum(null, null);
相媲美,並當您連接兩個空值你再次爲空。
編號'undefined'不是'null',並且在將它們相加而不是null時返回'NaN'。 – Bergi
我意識到調用沒有參數的函數看起來很奇怪,但是......我非常有限的經驗告訴我,當你這樣做時:'var test = sum(2,2)'再次運行RUNS函數,而且我沒有我不想讓它運行,我只是想檢索它的價值。這就是爲什麼我有點困惑。 –
@Bergi - 我不想給他一些新的術語。 –
function sum(a,b) {
var result = a + b;
return result;
}
var test = sum(2,2);
alert(test);
'sum(2,2)'執行該功能。 'var test = sum()'指定'sum'的結果,不含參數,當然是'NaN'。 – elclanrs
'sum(2,2)'確實返回'4','sum()'單獨返回'NaN' - 你期望什麼(或者:你讀過哪些教程)? – Bergi
我預計'var test = sum()'不會運行該函數。相反,它只會檢索返回的值。但是,再一次,我一直在研究JavaScript(和一般的編程)僅僅幾個星期。 –