
Lösungen und Erklärung für JS -Übungen.
Dies ist kein Cheat -Blatt!
Ich habe diese Zusammenstellung gemacht, während ich JavaScript -Algorithmen in Freecodecamp und Edabit gelöst habe. Ich dachte, dies muss ein hilfreicher Leitfaden für Leute sein, die versuchen, im Webentwicklungsparadigma aufzustehen.
Erstellen Sie eine Funktion, die den kleinsten Wert im Array anzeigt.
Beispiel:
> console . log ( findSmallest ( [ 30 , 45 , 60 , 7 ] ) ) ;
> 1Referenz:
Lösung:
function findSmallest ( arr ) {
return Math . min ( ... arr ) ;
} Funktion, die Ihre Zeichenfolge in alphabetischer Reihenfolge zurückgibt
Beispiel:
> console . log ( AlphabeticalOrder ( 'hello' ) ) ;
> "ehllo"Referenz:
Array.Split
Array.Join
Lösung:
function AlphabeticalOrder ( str ) {
return str
. split ( "" )
. sort ( )
. join ( "" ) ;
} In der Mathematik ist das Fakultät einer nicht negativen Ganzzahl N, die von N!, Das Produkt aller positiven Ganzzahlen, die weniger oder gleich n sind. In einfachen Worten ist das Faktor von 7 so gelöst:
7 _ 6 _ 5 _ 4 _ 3 _ 2 _ 1 = 5,040
Beispiel:
> console . log ( factorializer ( 7 ) ) ;
> 5040Referenz:
Rekursion
Wenn und sonst Aussagen
Lösung:
function factorializer ( int ) {
if ( int <= 1 ) {
return 1 ;
} else {
return int * factorializer ( int - 1 ) ;
}
} Eine Funktion, mit der Sie wissen, ob eine Zahl gerade oder ungerade ist
Beispiel:
> console . log ( oddOrEven ( 7 ) ) ;
> "Odd"Referenz:
Lösung:
function oddOrEven ( int ) {
let ouput = int % 2 ;
if ( output == 0 ) {
return "Even" ;
} else {
return "Odd" ;
}
} Entfernen Sie alle ungeraden Zahl (n) in einem Array und geben Sie ein neues Array zurück, das nur Zahlen enthält
Beispiel:
> console . log ( evenOnly ( [ 1 , 2 , 3 , 4 , 5 , 6 ] ) ) ;
> [ 2 , 4 , 6 ]Referenz:
Array.filter
Modulo
Lösung:
function evenOnly ( arr ) {
let result = arr . filter ( arr => arr % 2 == 0 ) ;
return result ;
} Erstellen Sie eine Funktion, die ein Array akzeptiert. Überprüfen Sie den Datentyp jedes Elements. Die Funktion löscht String -Elemente und gibt ein Neuarray zurück
Beispiel:
> console . log ( numbersOnly ( [ 'text' , 3 , 7 , 'github' , 13 , 'dev' ] ) ) ;
> [ 3 , 7 , 13 ]Referenz:
Array.filter
Typof
Lösung:
function numbersOnly ( arr ) {
return arr . filter ( arr => typeof arr == "number" ) ;
} Geben Sie die Summe einer Nummer zurück, die auf die Wurzel zurückgeht. Mit anderen Worten, die Funktion funktioniert wie folgt:
Addup (5);
// 5 + 4 + 3 + 2 + 1 + 0 = 15
Beispiel:
> console . log ( addUp ( 8 ) ) ;
> 36Referenz:
Rekursion
1 + 2 + 3 + 4 + ⋯
Lösung:
function addUp ( num ) {
if ( num <= 1 ) {
return num ;
} else {
return num + addUp ( num - 1 ) ;
}
} Erstellen Sie eine Funktion, die ein Array akzeptiert und Folgendes erledigt:
Holen Sie sich das niedrigste Element
Holen Sie sich das höchste Element
Holen Sie sich die Länge des Arrays
Holen Sie sich den Durchschnitt aller Elemente;
Lagern Sie diese Kriterien in einem neuen Array
Beispiel:
> console . log ( minMaxLengthAverage ( [ 7 , 13 , 3 , 77 , 100 ] ) ) ;
> [ 3 , 100 , 5 , 40 ]Referenz:
Math.min
Math.max
Array.Reduce
Array.length
Lösung:
function minMaxLengthAverage ( arr ) {
const min = Math . min ( ... arr ) ;
const max = Math . max ( ... arr ) ;
const len = arr . length ;
//Reducer for get Average function
const ave = arr => arr . reduce ( ( acc , curVal ) => acc + curVal , 0 ) / len ;
const average = ave ( arr ) ;
//Return output
return [ min , max , len , average ] ;
} Array.sort() sortiert die Saiten alphabetisch. Was ist, wenn wir Zahlen vom niedrigsten bis zum höchsten sortieren wollen? Wird es eine korrekte Ausgabe erzeugen?
Beispiel: Dies ist, was passiert, wenn wir Array.sort() auf Zahlen anwenden:
> arr = [ 45 , 34 , 23 , 12 , 7 ]
> console . log ( arr . sort ( ) ) ;
> [ 12 , 23 , 34 , 45 , 7 ]Die Ausgabe ist nicht korrekt, oder, während wir erwarten, dass dies der Rückgabewert ist:
> console . log ( sortNumsAscending ( [ 7 , 13 , 3 , 77 , 100 ] ) ) ;
> [ 3 , 5 , 40 , 100 ]Referenz:
Sortieren in JavaScript
Array.sort ()
Lösung:
function sortNumsAscending ( arr ) {
let sorter = ( a , b ) => {
return a - b ;
} ;
if ( arr == [ ] ) {
return [ ] ;
} else if ( arr == null ) {
return [ ] ;
} else {
return arr . sort ( sorter ) ;
}
} Konvertieren Sie die angegebene Zahl in eine römische Zahl
Beispiel:
> romanNumbers ( 1989 ) ;
> MCMLXXXIXReferenz:
Römische Ziffern
Array.join ()
Array.Indexof ()
Array.SPLICE ()
Lösung:
function romanNumbers ( num ) {
let values = [ 1000 , 900 , 500 , 400 , 100 , 90 , 50 , 40 , 10 , 9 , 5 , 4 , 1 ] ;
let romanNumerals = [
"M" ,
"CM" ,
"D" ,
"CD" ,
"C" ,
"XC" ,
"L" ,
"XL" ,
"X" ,
"IX" ,
"V" ,
"IV" ,
"I"
] ;
let roman = "" ;
for ( i = 0 ; i < values . length ; i ++ ) {
while ( values [ i ] <= num ) {
roman += romanNumerals [ i ] ;
num -= values [ i ] ;
}
}
return roman ;
}
console . log ( romanNumbers ( 1989 ) ) ; Geben Sie die absolute Summe aller Array -Elemente zurück
Beispiel:
> getAbsSum ( [ - 1 , - 3 , - 5 , - 4 , - 10 , 0 ] ) ;
> 23Referenz:
Array.Prototype.Reduce
Math.abs
Lösung:
function getAbsSum ( arr ) {
const reducer = ( acc , currVal ) => {
return acc + currVal ;
} ;
return Math . abs ( arr . reduce ( reducer ) ) ;
} Bilden Sie ein Dreieck mit Hash -Tags
Beispiel:
> #
> ##
> ###
> ####
> #####
> ######
> #######Referenz:
Lösung:
for ( x = "#" ; x . length <= 7 ; x += x ) {
console . log ( x ) ;
} Kehren Sie zurück, wie viele Wörter gegeben wurden
Beispiel:
> countWords ( 'hello from kbpsystem!' ) ;
> 3Referenz:
String.Prototype.split
Array.length
Lösung:
function countWords ( str ) {
return str . split ( " " ) . length ;
} Multiplizieren Sie alle Elemente in einem Array mit seiner Länge
Beispiel:
> MultiplyByLength ( [ 4 , 1 , 1 ] ) ;
> [ 12 , 3 , 3 ]Referenz:
für
Array.length
Array.Prototype.push
Array.prototype.map
Lösung:
function MultiplyByLength ( arr ) {
let len = arr . length ;
for ( i = 0 ; i < len ; i ++ ) {
arr [ i ] = arr [ i ] * len ;
}
return arr ;
} Erstellen Sie eine Funktion, die überprüft, ob Str1 mit den Zeichen in STR2 endet
Regeln:
Nehmen Sie zwei Saiten als Argument
Bestimmen Sie, ob die zweite Zeichenfolge mit dem Ende der ersten Zeichenfolge übereinstimmt
Booleschen Wert zurückgeben
Beispiel:
> console . log ( checkEnding ( "samurai" , "zi" ) ) ;
> falseReferenz:
String.Prototype.endswith () -Methode bestimmt, ob eine Zeichenfolge mit den Zeichen einer angegebenen Zeichenfolge endet und gegebenenfalls True oder False zurückgibt.
Array.Prototype.Join-Methode verbindet alle Elemente eines Arrays (oder eines Array-ähnlichen Objekts) in eine Zeichenfolge und gibt diese Zeichenfolge zurück.
Lösung:
function checkEnding ( str1 , str2 ) {
return str1 . endsWith ( str2 ) ;
} Erstellen Sie eine Funktion, die jedes Zeichenfolgenzeichen zweimal wiederholt
Beispiel:
> console . log ( doubleChar ( 'exercise' ) ) ;
> eexxeerrcciisseeReferenz:
Array.Prototype.Split Die methode split() spaltet ein String -Objekt in ein Array von Zeichenfolgen auf, indem die Zeichenfolge in Substrings getrennt wird, wobei eine angegebene Trennzeichenfolge geteilt wird, um zu bestimmen, wo jeder Split erstellt werden soll.
Array.Prototype.Map Die map() -Methode erstellt ein neues Array mit den Ergebnissen des Aufrufens einer bereitgestellten Funktion in jedem Element im aufrufenden Array.
Array.prototype.join Diese Methode verbindet alle Elemente eines Arrays (oder eines Array-ähnlichen Objekts) in eine Zeichenfolge und gibt diese Zeichenfolge zurück.
Lösung:
function doubleChar ( str ) {
let x = str . split ( "" ) ;
return x . map ( x => x . repeat ( 2 ) ) . join ( "" ) ;
} Erläuterung: Auf der obigen Lösung wenden wir zuerst die Split -Methode auf das String -Argument an und speichern sie dann in einer Variablen namens x . Als nächstes verwenden wir die Kartenfunktion, um einen Duplikationsprozess in jedem Element der Zeichenfolge auszuführen, das in diesem Fall als Array angesehen wurde, da wir gerade eine Split -Methode auf der Zeichenfolge angewendet haben. Sobald der Duplizierungsprozess abgeschlossen ist, nennen wir die join() -Methode. Wenn Sie diese Methode anwenden
Geben Sie den Indexspeicherort eines Elements von einem bestimmten Array zurück. Das erste Argument ist das Array, das Sie suchen möchten, und das zweite ist das Element (entweder String/Nummer), nach dem Sie suchen sollten.
Beispiel:
> console . log ( findIndex ( [ 'github' , 'gitlab' , 'bitbucket' , 'apollo' ] , 'gitlab' ) ) ;
> 1Referenz:
Lösung:
function findIndex ( arr , element ) {
return arr . indexOf ( element ) ;
} Erläuterung: findIndex -Funktion nimmt zwei Argumente. Zuerst ist das zu überwachende Array und das letzte ist das Element auf dem Array, das sich befinden muss. JavaScript verfügt über eine integrierte Methode namens indexOf() und wir haben das verwendet, um den Indexstandort eines bestimmten Elements in einem Array zu lokalisieren. Diese Methode schießt durch das Array, das den Indexwert eines Elements lokalisiert
Diese Übung ist mit freundlicher Genehmigung von Freecodecamp
Diese Übung ist eine Implementierung von Do während der Erklärung. Unser Ziel hier ist es, weiterhin eine Funktion/Anweisung auszuführen, einen Paramater festzulegen, und sobald das Ergebnis des Parameters auf false bewertet wird, wird die Funktion/Anweisung Ausführung gestoppt
Beispiel:
var result = "" ;
var i = 0 ;
do {
i = i + 1 ;
result = result + i ;
} while ( i < 5 ) ;
console . log ( result ) ;
// expected result: "12345"Referenz:
Die DO ... während die Anweisung eine Schleife erstellt, die eine bestimmte Anweisung ausführt, bis die Testbedingung auf False bewertet wird. Die Bedingung wird nach der Ausführung der Anweisung bewertet, was dazu führt, dass die angegebene Anweisung mindestens einmal ausgeführt wird.
Lösung:
// Setup
> var myArray = [ ] ;
> var i = 10 ;
> // Only change code below this line.
> do {
myArray . push ( i ) ;
i ++ ;
console . log ( i )
} while ( i < 11 ) Wir sind auf der Codetia!
Bitte zögern Sie nicht, ein Problem zu senden oder Anfragen zu ziehen