Académique Documents
Professionnel Documents
Culture Documents
Campagne : Développeur Web (Javascript, HTML, CSS) - Senior Langage(s) de programmation : Javascript Langage : Français Date : 26/07/2019
Javascript 91%
(1 500 / 1 650)
Fiabilité 75%
(260 / 346)
Modélisation 100%
(120 / 120)
1 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 1: [CSS] Gras
Javascript 00:07 / 00:25 20 / 20 pts
Question
Comment afficher un texte en gras en CSS ?
Réponse
font: b
style: bold
font-weight: bold
font-style: bold
bold: activated
Résultat
Réponse correcte
Connaissance du langage +20pts
2 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 2: [HTTP] 401
Javascript 00:09 / 00:30 20 / 20 pts
Question
Que signifie le code HTTP 401 ?
Réponse
Bad Request
Unauthorized
Forbidden
Not Found
Ce code HTTP n'existe pas
Résultat
Réponse correcte
Connaissance du langage +20pts
3 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 3: [JS] Comparaison avec ===
Javascript 00:11 / 00:30 20 / 20 pts
Question
En JavaScript, quel est le résultat de l'expression suivante :
"2" === 2;
Réponse
true
false
null
undefined
Résultat
Réponse correcte
Connaissance du langage +20pts
4 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 4: [JS] Quitter une boucle
Javascript 00:09 / 00:30 20 / 20 pts
Question
En JavaScript, laquelle des instructions suivantes permet de sortir d'une boucle ?
Réponse
exit;
quit();
i=99999999;
break;
Résultat
Réponse correcte
Connaissance du langage +20pts
5 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 5: [CSS] Acronyme CSS
Javascript 00:09 / 00:20 20 / 20 pts
Question
Que signifie CSS ?
Réponse
Create Simple Samples
Clean and Simple Styles
Cascading Style Sheets
Common Sheet Styles
Résultat
Réponse correcte
Connaissance du langage +20pts
6 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 6: [HTML] Acronyme
Javascript 00:08 / 00:25 20 / 20 pts
Question
Que veut dire HTML ?
Réponse
Hybrid Text Meta Language
HyperText Markup Language
High Transfer Meta Linking
Hifi Text Media Links
Résultat
Réponse correcte
Connaissance du langage +20pts
7 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 7: [JS] Java
Javascript 00:08 / 00:25 20 / 20 pts
Question
JavaScript est...
Réponse
Dérivé de Java
Une version web de Java
Sans rapport avec Java
Résultat
Réponse correcte
Modélisation +20pts
8 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 8: [JS] Moyenne
Javascript 02:06 / 03:00 100 / 100 pts
Question
Inplémentez la fonction average(table) .
La fonction doit renvoyer la valeur moyenne du tableau table donné en paramètre. table est toujours
un tableau défini, et ne contient que des nombres.
Réponse
Résultat
La solution calcule des moyennes
Connaissance du langage +50pts
9 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 9: [JS] Objets
Javascript 00:17 / 00:40 40 / 40 pts
Question
var myJson = {
"cities": [
{"name": "Paris", "pop": 2},
{"name": "London", "pop": 8},
{"name": "New York", "pop": 9}
]
};
Réponse
myJson.cities.Paris.pop
myJson.cities[0].pop
myJson.cities['Paris']['pop']
myJson->cities->Laos->pop
Résultat
Réponse correcte
Connaissance du langage +40pts
10 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 10: [HTML] title
Javascript 00:08 / 00:30 40 / 40 pts
Question
Quel attribut HTML peut être utilisé pour afficher un texte dans une bulle d'aide (tooltip) quand la souris
passe sur un élément ?
Réponse
class
title
id
label
alt
style
Résultat
Réponse correcte
Connaissance du langage +40pts
11 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 11: [JS] Evénements
Javascript 00:09 / 00:30 40 / 40 pts
Question
En JavaScript, quel est l'évènement qui est déclenché lorsqu'un élément <button> ou <textarea> perd le
focus ?
Réponse
onblur
onclick
ondblclick
onfocus
onfocuslost
Résultat
Réponse correcte
Connaissance du langage +40pts
12 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 12: [JS] Syntaxe
Javascript 00:09 / 00:30 40 / 40 pts
Question
Qu'affiche ce code Javascript ?
a = new Array();
a['b'] = 'hello world';
alert(a->b);
Réponse
0
hello world
a->helloworld
Une erreur de syntaxe
Résultat
Réponse correcte
Connaissance du langage +40pts
13 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 13: [JS] Erreurs Console
Javascript 00:40 / 00:45 40 / 40 pts
Question
En JavaScript, quelle fonction utilisez-vous pour afficher une erreur dans la console ?
Réponse
console.error();
Résultat
Réponse correcte
Connaissance du langage +40pts
Réponse(s) correcte(s)
console.error();
console.error
console.error()
14 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 14: [CSS] Sélecteur
Javascript 00:12 / 00:25 40 / 40 pts
Question
En CSS, comment sélectionner tous les éléments de type span dans un élément de type p ?
Réponse
p > span
p.span
span p
p span
span < p
Résultat
Réponse correcte
Connaissance du langage +40pts
15 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 15: [JS] Sélecteur JQuery
Javascript 00:15 / 00:45 40 / 40 pts
Question
En JavaScript avec JQuery, quel est le meilleur sélecteur qui permet de sélectionner l'élément suivant :
Réponse
$('#box');
$('#content');
$('.box');
$('.content');
$('box');
$('content');
Résultat
Réponse correcte
Connaissance du langage +40pts
16 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 16: [JS] Utilisation des exceptions
Javascript 00:09 / 00:30 40 / 40 pts
Question
Vous réalisez une bibliothèque en JavaScript. Parmi ces options, laquelle privilégiez-vous pour traiter un
comportement inattendu ?
Réponse
throw "Comportement Inattendu";
quit(-1);
console.err('Comportement Inattendu');
return false;
Résultat
Réponse correcte
Modélisation +40pts
17 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 17: [JS] Rendu de monnaie
Javascript 02:01 / 40:00 400 / 400 pts
18 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question
Les supermarchés s’équipent de plus en plus de caisses automatiques. La plupart de ces caisses n’
acceptent que le paiement par carte bancaire bien qu’une part non négligeable de consommateurs paye
encore en espèces (avec des billets et des pièces).
Une des problématiques rencontrées avec le paiement en espèces est le rendu de monnaie : comment
rendre une somme donnée de façon optimale, c'est-à-dire avec le nombre minimal de pièces et billets ?
C'est un problème qui se pose à chacun de nous quotidiennement, à fortiori aux caisses automatiques.
Dans cet exercice, on vous demande d’essayer de trouver une solution optimale pour rendre la monnaie
dans un cas précis : quand une caisse automatique ne contient que des pièces de 2€ , des billets de 5€
et de 10€ .
Pour simplifier le problème, nous considérerons que toutes ces pièces et billets sont disponibles en
quantité illimitée .
Le rendu de monnaie est exprimé par un objet possédant 3 propriétés : two , five et ten qui,
respectivement, stockent le nombre de pièces de 2€, de billets de 5€ et de billets de 10€.
Par exemple, si on reprend l’exemple n°2 du tableau (6€), on devrait obtenir l'objet:
{
two: 3, // 3 pièces de 2€
five: 0, // 0 billets de 5€
ten: 0 // 0 billets de 10€
}
Implémentez la méthode change(cash) qui retourne un objet contenant les pièces et billets dont la
somme vaut s . S’il est impossible de rendre la monnaie (comme dans l’exemple n°1), retournez null .
Pour obtenir un maximum de points votre solution devra toujours rendre la monnaie quand c’est
possible et avec le nombre minimal de pièces et billets.
19 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Réponse
20 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Résultat
La monnaie est correcte pour une somme de 10€
Résolution de problèmes +40pts
21 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 18: [JS] Jumeaux
Javascript 01:28 / 15:00 300 / 300 pts
Question
Le jumeau (twin) d'un mot est un mot écrit avec exactement les mêmes lettres (indépendamment de la
casse), mais pas nécessairement dans le même ordre.
La fonction isTwin(a, b) retourne true si b est le jumeau de a ou false si ce n'est pas le cas. a et b sont
deux chaînes de caractères non null.
Réponse
22 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Résultat
Tests simples
Résolution de problèmes +105pts
Insensible à la casse
Résolution de problèmes +65pts
23 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 19: [JS] Dates
Javascript 01:24 / 03:00 0 / 150 pts
Question
Implémentez la fonction nextWeek(date) qui renvoie une date 7 jours après la date donnée en
paramètre.
Réponse
Résultat
La solution fonctionne avec la date courante et une date donnée
Connaissance du langage +64pts
24 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 20: [JS] Paramètres
Javascript 00:18 / 00:40 60 / 60 pts
Question
En JavaScript, quel est le mot clé utilisé pour accéder au tableau des arguments d'une fonction ?
Réponse
arguments
Résultat
Réponse correcte
Connaissance du langage +60pts
Réponse(s) correcte(s)
arguments
25 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 21: [JS] Comparaison de strings
Javascript 00:10 / 00:30 60 / 60 pts
Question
En JavaScript, qu'affiche ce code ?
Réponse
true
false
"2<10"
null
Une erreur JavaScript
Résultat
Réponse correcte
Connaissance du langage +60pts
26 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 22: [JS] Nombres Aléatoires
Javascript 00:16 / 00:30 60 / 60 pts
Question
En JavaScript, laquelle de ces expressions renvoie un nombre aléatoire entre 0 et 10 ?
Réponse
Math.rand()*10;
Math.random(0,10);
random()*10;
Math.random()*10;
rand(10);
Résultat
Réponse correcte
Connaissance du langage +60pts
27 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Question 23: [JS] Prototypes
Javascript 00:37 / 01:30 60 / 60 pts
Question
Soit un objet obj définit par le code suivant:
MyClass = function() {
this.a = 'hello';
this.b = 'world';
};
MyClass.prototype.a = 'john';
MyClass.prototype.c = 12;
Réponse
obj.a s'évalue à 'hello'
obj.a s'évalue à 'john'
obj.b s'évalue à undefined
obj.b s'évalue à 'world'
obj.c s'évalue à undefined
obj.c s'évalue à 12
obj.d s'évalue à null
Résultat
Réponse correcte
Modélisation +60pts
28 / 29
Karim Fathallah (fathallah.karim@gmail.com)
Glossaire
Connaissance du langage
La mesure de cette compétence permet de déterminer l'expérience du candidat dans la pratique d'un langage de
programmation. Privilégiez cette compétence si, par exemple, vous recherchez un développeur qui devra être
rapidement opérationnel.
Modélisation
Cette mesure fournit une indication sur la capacité du candidat à appliquer des solutions standard pour résoudre des
problèmes récurrents. Un développeur ayant un bon niveau dans cette compétence augmentera la qualité
(maintenabilité, évolutivité) de vos applications. Cette compétence ne dépend pas spécifiquement d'une technologie.
Privilégiez cette compétence si, par exemple, vous recherchez un développeur qui sera amené à travailler sur les
briques qui structurent vos applications, à anticiper les besoins de demain pour développer des solutions pérennes.
Résolution de problèmes
Cette compétence correspond aux aptitudes du candidat à comprendre et à structurer son raisonnement pour trouver
des solutions à des problèmes complexes. Cette compétence ne dépend pas spécifiquement d'une technologie.
Privilégiez cette compétence si, par exemple, vos applications ont une composante technique importante (R&D,
innovation).
Fiabilité
La fiabilité caractérise la capacité du candidat à réaliser des solutions qui prennent en compte les cas particuliers. Plus
cette compétence est élevée, plus vos applications sont robustes (moins de bugs).
29 / 29
Karim Fathallah (fathallah.karim@gmail.com)