簡體   English   中英

為什么一直說我的對象不是函數?

[英]Why it keeps saying that my object is not a function?

我不知道發生了什么,我只是將所有這些更改為函數,現在它不起作用,我不知道為什么。

我得到了練習對象,此時我只有一個練習,所以在出現提示時單擊 1,這應該運行 Zadania.zad1 (eng. Exercises.exc1) 但不知何故它說 Zadania.zad1 不是一個函數。

 (function(){ Zadania = {}; wybierzZadanie(); function wybierzZadanie() { do { var numer_zadania = parseInt(prompt("Podaj numer zadania (click 1 right now and look at a failure xD sry im from poland)")); } while(numer_zadania <= 0 || !numer_zadania); switch(numer_zadania) { case 1: Zadania.zad1() break; case 2: Zadania.zad2() break; case 3: Zadania.zad3() break; case 4: Zadania.zad4() break; case 5: Zadania.zad5() break; case 6: Zadania.zad6() break; case 7: Zadania.zad7() break; case 8: Zadania.zad8() break; } } Zadania.zad1 = function() { console.log("Zadanie numer 1"); var arg = []; var najwieksza = -Infinity; var najmniejsza = Infinity; do { var doTablicy = prompt("Podaj pojedynczo liczby i zatwierdzaj enterem (0 kończy wpisywanie)"); if(doTablicy.length != 1) { alert("Podaj liczby pojedynczo"); } else if(typeof(parseInt(doTablicy)) == "number") { arg.push(doTablicy); } } while(doTablicy != 0); for(let i = 0; i <= arguments.length-1; i++) { if(i == 0) { najwieksza = arguments[i]; } else if(arguments[i] > najwieksza) najwieksza = arguments[i]; } for(let i = 0; i <= arguments.length-1; i++) { if(i == 0) { najmniejsza = arguments[i]; } else if(arguments[i] < najmniejsza) najwieksza = arguments[i]; } alert("Z liczb: " + arguments + " najmniejsza liczba to: " + najmniejsza + " a największa to: " + najwieksza); wybierzZadanie(); } })();
 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Zadania</title> <script type="text/javascript" src="zadania.js"></script> </head> <body> </body> </html>

您在定義 Zadania.zad1 之前調用了wybierzZadanie函數。 試試這個:

 (function(){ Zadania = {}; function wybierzZadanie() { do { var numer_zadania = parseInt(prompt("Podaj numer zadania (click 1 right now and look at a failure xD sry im from poland)")); } while(numer_zadania <= 0 || !numer_zadania); switch(numer_zadania) { case 1: Zadania.zad1() break; case 2: Zadania.zad2() break; case 3: Zadania.zad3() break; case 4: Zadania.zad4() break; case 5: Zadania.zad5() break; case 6: Zadania.zad6() break; case 7: Zadania.zad7() break; case 8: Zadania.zad8() break; } } Zadania.zad1 = function() { console.log("Zadanie numer 1"); var arg = []; var najwieksza = -Infinity; var najmniejsza = Infinity; do { var doTablicy = prompt("Podaj pojedynczo liczby i zatwierdzaj enterem (0 kończy wpisywanie)"); if(doTablicy.length != 1) { alert("Podaj liczby pojedynczo"); } else if(typeof(parseInt(doTablicy)) == "number") { arg.push(doTablicy); } } while(doTablicy != 0); for(let i = 0; i <= arguments.length-1; i++) { if(i == 0) { najwieksza = arguments[i]; } else if(arguments[i] > najwieksza) najwieksza = arguments[i]; } for(let i = 0; i <= arguments.length-1; i++) { if(i == 0) { najmniejsza = arguments[i]; } else if(arguments[i] < najmniejsza) najwieksza = arguments[i]; } alert("Z liczb: " + arguments + " najmniejsza liczba to: " + najmniejsza + " a największa to: " + najwieksza); wybierzZadanie(); } wybierzZadanie(); })();
 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Zadania</title> <script type="text/javascript" src="zadania.js"></script> </head> <body> </body> </html>

切希奇! 你需要移動wybierzZadanie(); 行到腳本的末尾,因為在您調用它的那一刻,它尚未定義。 所以Zadania.zad1 = function() {...應該在你調用wybierzZadanie()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM