2017-05-03 3 views
0

Schreiben Sie eine Funktion namens "isOldEnoughToDrinkAndDrive".Konsolenfehler wird zurückgegeben, um false zurückzugeben

Gegeben eine Zahl, in diesem Fall ein Alter, "isOldEnoughToDrinkAndDrive" gibt zurück, ob eine Person dieses gegebenen Alters alt genug ist, um in den Vereinigten Staaten legal zu trinken und zu fahren.

Hinweise: * Das gesetzliche Mindestalter für Alkoholkonsum in den Vereinigten Staaten ist 21. * Es ist immer illegal zu trinken und in den Vereinigten Staaten zu fahren.

var output = isOldEnoughToDrinkAndDrive(22); 
console.log(output); // --> false 

Starter-Code:

function isOldEnoughToDrinkAndDrive(age) { 
    // your code here 
} 

Meine Lösung:

function isOldEnoughToDrinkAndDrive(age) { 
    // your code here 
    var output = age >= 21; 
    console.log(output); 
    return output; 
} 

var output = isOldEnoughToDrinkAndDrive(21); 

Der Fehler, den ich bekommen habe, während das Ergebnis der Einreichung ist unten.

This is the error I am getting

Kann jemand bitte helfen?

+1

In meinem Land muss man nur 'false zurückgeben;' von dieser Funktion –

+0

Hinweis: ** Es ist immer illegal in den USA zu trinken und zu fahren. ** Welches Alter würde das ändern? –

+0

Ich stimme zu, diese Frage als Off-Topic zu schließen, da dies wie eine Trickfrage aussieht, also keine "echte" programmbezogene Frage –

Antwort

1

Ihr Code sollte immer falsch zurückgeben, warum also nicht einfach FALSE zurückgeben (seit ist es immer illegal zu trinken und in den USA fahren)?

Wie auch immer, Ihr Code gibt TRUE zurück, da das Alter von 21 größer als oder gleich (in diesem Fall) das Trinkalter von 21 ist. Das Ergebnis hat jedoch nichts mit dem übergebenen Parameter zu tun.

+0

Nun, ich bekomme immer noch einen Fehler. Überprüfen Sie das. https://jsfiddle.net/ne77j351/1/ –

+0

Ich denke, Sie ' Das Ergebnis hat nichts mit dem angegebenen Parameter zu tun, Sie könnten einfach nur FALSE zurückgeben. 'function isOldEnoughToDrinkAndDrive (Alter) { Rückgabewert; } var output = isOldEnoughToDrinkAndDrive (21); ' – Nixivious

+0

Nein, ich habe es versucht. Es hat nicht funktioniert. –

2

Ihr Code sollte zurückgeben false unter Berücksichtigung der immer illegal zu trinken und in den USA fahren.

return false; 
+0

warum sollten sie? –

+1

@AlonEitan falsch gelesen OPs Frage, aber jetzt bearbeitet sowieso. –

+0

Nun, ich bekomme immer noch einen Fehler. :( –

1

In reinem JS funktioniert Ihr Code gut. Ergebnis von der Konsole: enter image description here

Aber ich denke, Sie nehmen die Daten aus dem Formular wie ein String-Typ. Und Sie sollten es konvertieren, bevor Vergleich zu Int:

function isOldEnoughToDrinkAndDrive(age) { 
    age = age ? parseInt(age) : 0; 
    var output = (age >= 21); 
    console.log(output); 
    return output; 
} 

var output = isOldEnoughToDrinkAndDrive(21); 

Aber richtige Antwort auf diese Frage ist Code wie folgt:

function isOldEnoughToDrinkAndDrive(age) { 
    return false; 
} 

Denn: Es ist immer illegal zu trinken und in der Fahrt Vereinigte Staaten.

+0

Ja, es funktioniert gut in meiner lokalen Umgebung auch. –

+0

Dann nur konvertieren Eingabe Alter zu Integer-Typ wie in meiner Version von Code –

+0

Ich bekomme immer noch einen Fehler .. –

Verwandte Themen