
Solutions et explication aux exercices JS.
Ce n'est pas une feuille de triche!
J'ai fait cette compilation tout en résolvant les algorithmes JavaScript dans FreeCodeCamp et Edabit. Je pensais que cela devait être un guide utile pour les personnes qui essaient de se mettre en service dans le paradigme de développement Web.
Créez une fonction qui affichera la plus petite valeur du tableau.
Exemple:
> console . log ( findSmallest ( [ 30 , 45 , 60 , 7 ] ) ) ;
> 1Référence:
Solution:
function findSmallest ( arr ) {
return Math . min ( ... arr ) ;
} Fonction qui renvoie votre chaîne dans l'ordre alphabétique
Exemple:
> console . log ( AlphabeticalOrder ( 'hello' ) ) ;
> "ehllo"Référence:
Array.split
Array.join
Solution:
function AlphabeticalOrder ( str ) {
return str
. split ( "" )
. sort ( )
. join ( "" ) ;
} En mathématiques, le factoriel d'un entier non négatif n, désigné par n!, Est le produit de tous les entiers positifs inférieurs ou égaux à n. En termes simples, le factoriel de 7 est résolu comme ceci:
7 _ 6 _ 5 _ 4 _ 3 _ 2 _ 1 = 5,040
Exemple:
> console . log ( factorializer ( 7 ) ) ;
> 5040Référence:
Récursivité
Si et sinon déclarations
Solution:
function factorializer ( int ) {
if ( int <= 1 ) {
return 1 ;
} else {
return int * factorializer ( int - 1 ) ;
}
} Une fonction qui vous permet de savoir si un nombre est uniforme ou étrange
Exemple:
> console . log ( oddOrEven ( 7 ) ) ;
> "Odd"Référence:
Solution:
function oddOrEven ( int ) {
let ouput = int % 2 ;
if ( output == 0 ) {
return "Even" ;
} else {
return "Odd" ;
}
} Supprimer tous les numéros impairs dans un tableau et renvoyer un nouveau tableau qui contient des nombres uniques uniquement
Exemple:
> console . log ( evenOnly ( [ 1 , 2 , 3 , 4 , 5 , 6 ] ) ) ;
> [ 2 , 4 , 6 ]Référence:
Array.filter
Modulo
Solution:
function evenOnly ( arr ) {
let result = arr . filter ( arr => arr % 2 == 0 ) ;
return result ;
} Créez une fonction qui acceptera un tableau, vérifiez le type de données de chaque élément. La fonction supprimera les éléments de chaîne et renverra le nouveau tableau
Exemple:
> console . log ( numbersOnly ( [ 'text' , 3 , 7 , 'github' , 13 , 'dev' ] ) ) ;
> [ 3 , 7 , 13 ]Référence:
Array.filter
typeof
Solution:
function numbersOnly ( arr ) {
return arr . filter ( arr => typeof arr == "number" ) ;
} Renvoyez la somme d'un nombre qui remonte à sa racine. En d'autres termes, la fonction fonctionnera comme ceci:
Addud (5);
// 5 + 4 + 3 + 2 + 1 + 0 = 15
Exemple:
> console . log ( addUp ( 8 ) ) ;
> 36Référence:
Récursivité
1 + 2 + 3 + 4 + ⋯
Solution:
function addUp ( num ) {
if ( num <= 1 ) {
return num ;
} else {
return num + addUp ( num - 1 ) ;
}
} Créez une fonction qui acceptera un tableau et procédera ce qui suit:
Obtenez l'élément le plus bas
Obtenez l'élément le plus élevé
Obtenez la longueur du tableau
Obtenez la moyenne de tous les éléments;
Stockez ces critères dans un nouveau tableau
Exemple:
> console . log ( minMaxLengthAverage ( [ 7 , 13 , 3 , 77 , 100 ] ) ) ;
> [ 3 , 100 , 5 , 40 ]Référence:
Math.min
Math.max
Array.reduce
Array.lengle
Solution:
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() trie les cordes de manière alphabétique. Et si nous voulons trier les nombres du plus bas au plus haut? Va-t-il produire une sortie correcte?
Exemple: c'est ce qui se passe si nous appliquons Array.sort() aux nombres:
> arr = [ 45 , 34 , 23 , 12 , 7 ]
> console . log ( arr . sort ( ) ) ;
> [ 12 , 23 , 34 , 45 , 7 ]La sortie n'est pas correcte, n'est-ce pas ?, Alors que nous nous attendons à ce que ce soit la valeur de retour:
> console . log ( sortNumsAscending ( [ 7 , 13 , 3 , 77 , 100 ] ) ) ;
> [ 3 , 5 , 40 , 100 ]Référence:
Tri en javascript
Array.sort ()
Solution:
function sortNumsAscending ( arr ) {
let sorter = ( a , b ) => {
return a - b ;
} ;
if ( arr == [ ] ) {
return [ ] ;
} else if ( arr == null ) {
return [ ] ;
} else {
return arr . sort ( sorter ) ;
}
} Convertir le numéro donné en un chiffre romain
Exemple:
> romanNumbers ( 1989 ) ;
> MCMLXXXIXRéférence:
Chiffres romains
Array.join ()
Array.indexof ()
Array.splice ()
Solution:
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 ) ) ; Retourner la somme absolue de tous les éléments du tableau
Exemple:
> getAbsSum ( [ - 1 , - 3 , - 5 , - 4 , - 10 , 0 ] ) ;
> 23Référence:
Array.prototype.reduce
Math.abs
Solution:
function getAbsSum ( arr ) {
const reducer = ( acc , currVal ) => {
return acc + currVal ;
} ;
return Math . abs ( arr . reduce ( reducer ) ) ;
} Former un triangle en utilisant des balises de hachage
Exemple:
> #
> ##
> ###
> ####
> #####
> ######
> #######Référence:
Solution:
for ( x = "#" ; x . length <= 7 ; x += x ) {
console . log ( x ) ;
} Retourner combien de mots ont été donnés
Exemple:
> countWords ( 'hello from kbpsystem!' ) ;
> 3Référence:
String.prototype.split
Array.lengle
Solution:
function countWords ( str ) {
return str . split ( " " ) . length ;
} Multipliez tous les éléments d'un tableau par sa longueur
Exemple:
> MultiplyByLength ( [ 4 , 1 , 1 ] ) ;
> [ 12 , 3 , 3 ]Référence:
pour
Array.lengle
Array.prototype.push
Array.prototype.map
Solution:
function MultiplyByLength ( arr ) {
let len = arr . length ;
for ( i = 0 ; i < len ; i ++ ) {
arr [ i ] = arr [ i ] * len ;
}
return arr ;
} Créer une fonction qui vérifie si STR1 se termine avec les caractères de Str2
Règles:
Prendre deux chaînes comme argument
Déterminer si la deuxième chaîne correspond à la fin de la première chaîne
Renvoie la valeur booléenne
Exemple:
> console . log ( checkEnding ( "samurai" , "zi" ) ) ;
> falseRéférence:
String.prototype.endswith () détermine si une chaîne se termine par les caractères d'une chaîne spécifiée, renvoyant true ou false, selon le cas.
Array.prototype.join méthode rejoint tous les éléments d'un tableau (ou un objet de type tableau) dans une chaîne et renvoie cette chaîne.
Solution:
function checkEnding ( str1 , str2 ) {
return str1 . endsWith ( str2 ) ;
} Créer une fonction qui répétera chaque caractère de chaîne deux fois
Exemple:
> console . log ( doubleChar ( 'exercise' ) ) ;
> eexxeerrcciisseeRéférence:
Array.prototype.split La méthode split() divise un objet de chaîne dans un tableau de chaînes en séparant la chaîne en sous-chaînes, en utilisant une chaîne de séparateur spécifiée pour déterminer où faire chaque division.
Array.prototype.map La méthode map() crée un nouveau tableau avec les résultats de l'appel d'une fonction fournie sur chaque élément du tableau d'appel.
Array.prototype.join Cette méthode rejoint tous les éléments d'un tableau (ou un objet de type tableau) dans une chaîne et renvoie cette chaîne.
Solution:
function doubleChar ( str ) {
let x = str . split ( "" ) ;
return x . map ( x => x . repeat ( 2 ) ) . join ( "" ) ;
} Explication: Sur la solution ci-dessus, nous appliquons d'abord la méthode divisée sur l'argument de la chaîne, puis le stockons dans une variable appelée x . Ensuite, nous utilisons la fonction MAP afin d'effectuer un processus de duplication sur chaque élément de la chaîne, qui a été considéré comme un tableau sur ce cas car nous venons d'appliquer une méthode divisée sur la chaîne. Une fois le processus de duplication terminé, nous appelons la méthode join() . L'application de cette méthode convertira à nouveau le tableau en étant une chaîne, mais cette fois avec une nouvelle valeur dupliquée
Renvoie l'emplacement d'index d'un élément à partir d'un tableau donné. Le premier argument est le tableau que vous souhaitez rechercher et le second est l'élément (chaîne / numéro) à rechercher.
Exemple:
> console . log ( findIndex ( [ 'github' , 'gitlab' , 'bitbucket' , 'apollo' ] , 'gitlab' ) ) ;
> 1Référence:
Solution:
function findIndex ( arr , element ) {
return arr . indexOf ( element ) ;
} Explication: findIndex La fonction prend deux arguments. Le premier est le tableau à surveiller, puis le dernier est l'élément du tableau qui doit être localisé. JavaScript a une méthode intégrée appelée indexOf() et nous l'avons utilisé afin de localiser l'emplacement d'index d'un certain élément dans un tableau. Cette méthode boucle via le tableau localisant la valeur d'index d'un élément
Cet exercice est gracieuseté de FreeCodeCamp
Cet exercice est une mise en œuvre de la déclaration de DO. Notre objectif ici est de continuer à exécuter une fonction / instruction, définir un paramater et dès que le résultat du paramètre évalue à false , l'exécution de la fonction / instruction s'arrêtera
Exemple:
var result = "" ;
var i = 0 ;
do {
i = i + 1 ;
result = result + i ;
} while ( i < 5 ) ;
console . log ( result ) ;
// expected result: "12345"Référence:
L'instruction DO ... tandis que crée une boucle qui exécute une instruction spécifiée jusqu'à ce que la condition de test évalue False. La condition est évaluée après l'exécution de l'instruction, ce qui entraîne l'exécution de l'instruction spécifiée au moins une fois.
Solution:
// Setup
> var myArray = [ ] ;
> var i = 10 ;
> // Only change code below this line.
> do {
myArray . push ( i ) ;
i ++ ;
console . log ( i )
} while ( i < 11 ) Nous sommes sur le code!
N'hésitez pas à soumettre un problème ou à tirer des demandes