嗨,我需要一些幫助,我對編碼還很陌生,我似乎無法讓我的函式正常作業,它一直回傳未定義,任何提示將不勝感激。謝謝
var german = ["eins","zwei","drei","vier","fünf","sechs","sieben","acht","neun","zehn","elf","zw?lf","dreizehn","vierzehn","fünfzehn","sechzehn","siebzehn","achtzehn","neunzehn","zwanzig","einundzwanzig","zweiundzwanzig","dreiundzwanzig","vierundzwanzig","fünfundzwanzig","sechsundzwanzig","siebenundzwanzig","achtundzwanzig","neunundzwanzig","dreiβig"];
var french = ["un","duex","trois","quatre","cinq","six","sept","huit","neuf","dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf","vingt","vingt et un","vingt-deux","vingt-trois","vingt-quatre","vingt-cinq","vingt-six","vingt-sept","vingt-huit","vingt-neuf","trente"];
var translatedNumber = translate();
var number = prompt("Please enter a number between 1-30 to be translated");
if (number > 30 || number < 1) {
alert("Please enter a number between 1-30")
exit()
}
else if(isNaN(number)){
alert("Please enter digits")
exit()
}
var language = prompt("Translated into what language? French/German");
if (language == "german" || language == "french"){
translate();
}
else{
alert("Only French or German is allowed")
exit()
}
function translate(number,language,translatedNumber,french,german){
if(language == "german"){
var translatedNumber = german[number - 1];
}
else if(language == "french"){
var translatedNumber = french[number - 1];
}
return translatedNumber;
}
alert("The translation is " translatedNumber);
uj5u.com熱心網友回復:
修復:
(問題是你沒有正確設定你的函式。我將 translate 函式變數更改為 lan 和 num 因為它們是你在函式中使用的僅有的兩個。另外我認為你不需要在頂,因為你還沒有使用它)希望這有幫助:D。)
var german = ["eins","zwei","drei","vier","fünf","sechs","sieben","acht","neun","zehn","elf","zw?lf","dreizehn","vierzehn","fünfzehn","sechzehn","siebzehn","achtzehn","neunzehn","zwanzig","einundzwanzig","zweiundzwanzig","dreiundzwanzig","vierundzwanzig","fünfundzwanzig","sechsundzwanzig","siebenundzwanzig","achtundzwanzig","neunundzwanzig","dreiβig"];
var french = ["un","duex","trois","quatre","cinq","six","sept","huit","neuf","dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf","vingt","vingt et un","vingt-deux","vingt-trois","vingt-quatre","vingt-cinq","vingt-six","vingt-sept","vingt-huit","vingt-neuf","trente"];
var translatedNumber;
var number = prompt("Please enter a number between 1-30 to be translated");
if (number > 30 || number < 1) {
alert("Please enter a number between 1-30")
exit()
}
else if(isNaN(number)){
alert("Please enter digits")
exit()
}
var language = prompt("Translated into what language? French/German");
if (language == "german" || language == "french"){
translate(language, number);
}
else{
alert("Only French or German is allowed")
exit()
}
function translate(lan, num){
if(lan == "german"){
translatedNumber = german[num - 1];
} else if(lan == "french"){
translatedNumber = french[num - 1];
}
return translatedNumber;
}
alert("The translation is " translatedNumber);
uj5u.com熱心網友回復:
關于您的代碼需要注意的一些事項:
- 該
exit功能沒有定義。 - 您
translatedNumber是從另一個函式中修改的全域變數。避免這樣的全域變數。 - 您應該先檢查變數是否為數字,然后再檢查它是否在所需的范圍內。
希望以下是您正在尋找的內容:
const german = ["eins","zwei","drei","vier","fünf","sechs","sieben","acht","neun","zehn","elf","zw?lf","dreizehn","vierzehn","fünfzehn","sechzehn","siebzehn","achtzehn","neunzehn","zwanzig","einundzwanzig","zweiundzwanzig","dreiundzwanzig","vierundzwanzig","fünfundzwanzig","sechsundzwanzig","siebenundzwanzig","achtundzwanzig","neunundzwanzig","dreiβig"];
const french = ["un","duex","trois","quatre","cinq","six","sept","huit","neuf","dix","onze","douze","treize","quatorze","quinze","seize","dix-sept","dix-huit","dix-neuf","vingt","vingt et un","vingt-deux","vingt-trois","vingt-quatre","vingt-cinq","vingt-six","vingt-sept","vingt-huit","vingt-neuf","trente"];
try {
const number = prompt("Please enter a number between 1-30 to be translated");
if (isNaN(number))
throw({ message: "Please enter digits"});
if (number > 30 || number < 1)
throw({ message: "Please enter a number between 1-30"});
const language = prompt("Translated into what language? French/German");
if (language == "german" || language == "french"){
const translatedNumber = translate(number, language);
alert("The translation is " translatedNumber);
}
else
throw({ message: "Only French or German is allowed"});
} catch (error) {
alert(error.message);
}
function translate(number,language){
return language == "german" ? german[number - 1] : french[number - 1];
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/315987.html
標籤:javascript 数组 功能
