function orangeCost(oneOrange){
//this.OneOrange = oneOrange;
var total = OneOrange * OneOrange;
console.log(total);
}
orangeCost(5);
我期待5是通過在參數,它可以像變量使用的功能中,不能正常工作,直到我用this
關鍵字(2號線),爲什麼呢?爲什麼我的功能PARAMS說是未定義
function orangeCost(oneOrange){
//this.OneOrange = oneOrange;
var total = OneOrange * OneOrange;
console.log(total);
}
orangeCost(5);
我期待5是通過在參數,它可以像變量使用的功能中,不能正常工作,直到我用this
關鍵字(2號線),爲什麼呢?爲什麼我的功能PARAMS說是未定義
如果你還沒有做任何複製粘貼錯別字,你有一個橙色參數,持有5和OneOrange局部變量,這是未定義的。
Javascript區分大小寫。
o
小的位置 - >function orangeCost(oneOrange){
變化
var total = OneOrange * OneOrange;
到
var total = oneOrange * oneOrange;
OR
變化
function orangeCost(oneOrange){
到
function orangeCost(OneOrange){
在JavaScript everytihng是,這意味着變量,函數名和運營商都是區分大小寫區分大小寫。
因此,變量oneOrange
不同於OneOrange
。這就是你得到關於未定義變量的信息的原因。並且你的函數輸入參數被定義,但變量'OneOrange'不是。
你必須行
var total = OneOrange * OneOrange;
改變
var total = oneOrange * oneOrange;
而且最好不要,因爲它們用於構造約定使用變量,如OneOrange
。
「OneOrange」與「oneOrange」不同(注意第一個字符)。它使用'this.OneOrange = oneOrange;'的原因是這個語句創建了一個全局變量'OneOrange',其值爲'oneOrange'。 –
這個問題似乎是無關緊要的,因爲它是關於打字錯誤,這對其他人來說不會有太大用處。 –
請不要投下來,我的壞LULZZZ – user3057928