WunderQuiz

dashboard

Home

search

Recherche

help_outline

FAQ & Info

apps

Collections

JavaScript - ES5 - Comment marche 'this' ?

quiz image

Le petit this est l'horreur pour la plupart des développeurs JavaScript (ES5).
Connaissez-vous ses secrets ?
JavaScript’s this: how it works

visibility407, numbers10, Crée par : hecmec

JavaScript - ES5 - Comment marche 'this' ?

Le petit this est l'horreur pour la plupart des développeurs JavaScript (ES5). Connaissez-vous ses secrets ? JavaScript’s this: how it works

TechnoCodeInformatiqueJavaScriptWeb

Quiz Preview

Quel est le résultat de ce code en mode non-strict ?




function foo() {
return this;
}
foo();

the Window object
undefined
an empty object, {}
null
ⓘ

Ici, "this" est un paramètre implicite qui est mis à une valeur par défaut. En mode non-strict, c'est Window.

Quel est le résultat de ce code en mode strict ?




function foo() {
'use strict';
return this === undefined ? 'this is undefined' : this;
}
foo();

'this is undefined'
the Window object
null
an empty object, {}
ⓘ

Ici, "this" est un paramètre implicite qui est mis à une valeur par défaut. En mode strict, c'est undefined.

Quel doit être le premier paramètre du call pour obtenir la chaîne "Fairephone 2" ?



function telephone(suffix) {
return this.name + suffix;
}
telephone.call(_____, ' 2');

'fairephone'
{ name: 'fairephone' }
['fairephone']
fairephone
ⓘ

Ici, il faut un object avec une propriété 'name'.

Qu'est-ce que result ?



var that;
function Thing() {
that = this;
that.name = 'foo';
}
var inst = new Thing();
inst.name = 'bar';
var result = that.name;

'bar'
'foobar'
undefined
'foo'
ⓘ

Le opérateur "new" crée un nouvel objet et le transmet au constructeur via "this".
"This" est le objet crée.

Qu'est-ce que p et p.x ?



function Point(x, y) {
this.x = x;
this.y = y;
}
var p = Point(7, 5);

p est l'objet Window, p.x == 7
p est undefined, p.x renvoie une erreur
p == 7, p.x renvoie une erreur
p est un objet de type Point, p.x == 7
ⓘ

On a oublié le "new". Vous obtenez un avertissement en mode strict (ceci === indéfini) :

Quelle est la sortie console de ce code ?



var obj = {
foo: function () {
console.log(this === obj);
}
}
obj.foo();

undefined
0
false
true
ⓘ

"this" fait référence à l'objet sur lequel la méthode a été invoquée.

Qu'est-ce que result ?



var foo = 1;
this.foo = 2;
var result = foo + this.foo;

4
2
undefined
3
ⓘ

Ici, 'foo' est dans le scope global. Et 'this' est le scope global. "foo" est 2, et 2 + 2 = 4. Utiliser le scope global ainsi est une mauvaise pratique.

Quelle est la sortie console de ce code ?



var name = 'foo';
var o = {
name: 'bar',
foo: function() {
var name = 'baz';
console.log(eval('this.name'));
}
};
o.foo();

'foo'
'baz'
'bar'
undefined
ⓘ

"this" fait référence à l'objet sur lequel a été invoqué la méthode.

Qu'est-ce que conter.count ?



var counter = {
count: 0,
inc: function () { this.count++; }
};
function callback(func) {
func();
}
callback(counter.inc.bind(counter));
counter.count;

undefined
2
0
1
ⓘ

Ici, la méthode est appelée hors context, mais liée au counter via bind.

Qu'est-ce que conter.count ?



var foo = {
bar: function(){ return this.baz; },
baz: 1
};
var f = foo.bar;
typeof f();

"function"
"number"
"object"
"undefined"
ⓘ

Ici, la méthode foo.bar est extrait vers f et perd son context.

quiz image

JavaScript: Web page integration

visibility  322 vuesnumbers10 questions
TechnoWebJavaScriptCodeInformatique
quiz image

JavaScript: Les bases

visibility  397 vuesnumbers12 questions
TechnoInformatiqueWebJavaScript
quiz image

CSS Flex Layout - Partie 2

visibility  205 vuesnumbers12 questions
TechnoInformatiqueProgramationCSS
quiz image

L'histoire de l'internet

visibility  423 vuesnumbers19 questions
TechnoHistoireInformatique
quiz image

Devenez un pro du SEO : Optimisez votre référencement sur Google et autres moteurs de recherche

visibility  188 vuesnumbers10 questions
TechnoWebSEOMarketing
quiz image

CSS Flex Layout - Partie 1

visibility  224 vuesnumbers12 questions
TechnoInformatiqueProgramationCSS
quiz image

Reconnaitre les avions, Boeing vs Airbus

visibility  1071 vuesnumbers21 questions
TechnoAvionsAirbusBoeing
quiz image

Histoire de l'automobile - Partie 1

visibility  1075 vuesnumbers12 questions
TechnoAutoHistoire
quiz image

Les plus grandes Inventions et leurs créateurs ou créatrices

visibility  247 vuesnumbers20 questions
TechnoScienceHistoire
quiz image

Histoire de l'automobile - Partie 2

visibility  523 vuesnumbers11 questions
TechnoAutoHistoire
quiz image

Panneaux de danger, partie 2 - Code de la route

visibility  428 vuesnumbers11 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Panneaux de signalisations des services, partie 1 - Code de la route

visibility  248 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Marques de voitures occidentales pour les connaisseurs

visibility  506 vuesnumbers15 questions
TechnoVoitureAutomobile
quiz image

Reconnaissez-vous les modèles de Peugeot ?

visibility  340 vuesnumbers13 questions
TechnoAutomobile
quiz image

Histoire de l'aviation - Partie 1

visibility  738 vuesnumbers10 questions
TechnoAvionHistoire
quiz image

UX & IoT (Internet of Things)

visibility  214 vuesnumbers16 questions
Techno
quiz image

Panneaux d'obligation - Code de la route

visibility  258 vuesnumbers13 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Les meilleures alternatives à Twitter/X en 2024 avec leurs logos

visibility  145 vuesnumbers14 questions
TechnoRéseauxInternetSocial
quiz image

Panneau d’information - Code de la route

visibility  238 vuesnumbers15 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Marques de voiture pour les Nuls

visibility  689 vuesnumbers13 questions
TechnoVoitureAutomobile
quiz image

Panneaux de priorité - Code de la route

visibility  375 vuesnumbers9 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Marques de voitures orientales pour les connaisseurs

visibility  645 vuesnumbers10 questions
TechnoAutoAutomobileVoiture
quiz image

Panneaux de signalisations des services, partie 2 - Code de la route

visibility  288 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Les avions de ligne pour les nuls

visibility  1941 vuesnumbers14 questions
TechnoAvion
quiz image

Panneaux de danger, partie 3 - Code de la route

visibility  274 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Logos de marques de voitures européennes

visibility  688 vuesnumbers14 questions
VieTechnoVoiture
quiz image

Logos de marques de voitures non-européennes

visibility  422 vuesnumbers17 questions
VieTechnoVoiture
quiz image

Le langage SMS pour les nuls - 3ème

visibility  475 vuesnumbers10 questions
TechnoAdolescentSMSPortable
quiz image

Connaissez-vous la marque de voitures Tesla ?

visibility  304 vuesnumbers11 questions
TechnoAutomobile
quiz image

Panneaux d'interdiction - Code de la route

visibility  596 vuesnumbers11 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Connaissez vous les différent types de vélo ?

visibility  260 vuesnumbers16 questions
SportTechnoVélo
quiz image

Histoire de l'aviation - Partie 2

visibility  1041 vuesnumbers10 questions
TechnoAvionHistoire
quiz image

Reconnaitre les réseaux sociaux à partir de leurs icônes (partie 1)

visibility  734 vuesnumbers11 questions
SocialTechnoRéseaux-Sociaux
quiz image

Reconnaitre les réseaux sociaux à partir de leur icône (partie 2)

visibility  472 vuesnumbers11 questions
SocialRéseaux-SociauxTechno
quiz image

Panneaux de danger, partie 1 - Code de la route

visibility  327 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Une fusée: Ariane 5

visibility  452 vuesnumbers14 questions
TechnoEspacefuséefusee
quiz image

Panneaux temporaires - Code de la route

visibility  301 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Panneaux d'entrée en zones - Code de la route

visibility  255 vuesnumbers9 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Le langage SMS pour les nuls !

visibility  944 vuesnumbers10 questions
TechnoAdolescentSMSPortable
quiz image

Langage SMS pour les nuls - 2ème partie

visibility  473 vuesnumbers11 questions
TechnoPortableAdolescent
quiz image

JavaScript: Web page integration

visibility  322 vuesnumbers10 questions
TechnoWebJavaScriptCodeInformatique
quiz image

JavaScript: Les bases

visibility  397 vuesnumbers12 questions
TechnoInformatiqueWebJavaScript
quiz image

CSS Flex Layout - Partie 2

visibility  205 vuesnumbers12 questions
TechnoInformatiqueProgramationCSS
quiz image

L'histoire de l'internet

visibility  423 vuesnumbers19 questions
TechnoHistoireInformatique
quiz image

Devenez un pro du SEO : Optimisez votre référencement sur Google et autres moteurs de recherche

visibility  188 vuesnumbers10 questions
TechnoWebSEOMarketing
quiz image

CSS Flex Layout - Partie 1

visibility  224 vuesnumbers12 questions
TechnoInformatiqueProgramationCSS
quiz image

Reconnaitre les avions, Boeing vs Airbus

visibility  1071 vuesnumbers21 questions
TechnoAvionsAirbusBoeing
quiz image

Histoire de l'automobile - Partie 1

visibility  1075 vuesnumbers12 questions
TechnoAutoHistoire
quiz image

Les plus grandes Inventions et leurs créateurs ou créatrices

visibility  247 vuesnumbers20 questions
TechnoScienceHistoire
quiz image

Histoire de l'automobile - Partie 2

visibility  523 vuesnumbers11 questions
TechnoAutoHistoire
quiz image

Panneaux de danger, partie 2 - Code de la route

visibility  428 vuesnumbers11 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Panneaux de signalisations des services, partie 1 - Code de la route

visibility  248 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Marques de voitures occidentales pour les connaisseurs

visibility  506 vuesnumbers15 questions
TechnoVoitureAutomobile
quiz image

Reconnaissez-vous les modèles de Peugeot ?

visibility  340 vuesnumbers13 questions
TechnoAutomobile
quiz image

Histoire de l'aviation - Partie 1

visibility  738 vuesnumbers10 questions
TechnoAvionHistoire
quiz image

UX & IoT (Internet of Things)

visibility  214 vuesnumbers16 questions
Techno
quiz image

Panneaux d'obligation - Code de la route

visibility  258 vuesnumbers13 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Les meilleures alternatives à Twitter/X en 2024 avec leurs logos

visibility  145 vuesnumbers14 questions
TechnoRéseauxInternetSocial
quiz image

Panneau d’information - Code de la route

visibility  238 vuesnumbers15 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Marques de voiture pour les Nuls

visibility  689 vuesnumbers13 questions
TechnoVoitureAutomobile
quiz image

Panneaux de priorité - Code de la route

visibility  375 vuesnumbers9 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Marques de voitures orientales pour les connaisseurs

visibility  645 vuesnumbers10 questions
TechnoAutoAutomobileVoiture
quiz image

Panneaux de signalisations des services, partie 2 - Code de la route

visibility  288 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Les avions de ligne pour les nuls

visibility  1941 vuesnumbers14 questions
TechnoAvion
quiz image

Panneaux de danger, partie 3 - Code de la route

visibility  274 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Logos de marques de voitures européennes

visibility  688 vuesnumbers14 questions
VieTechnoVoiture
quiz image

Logos de marques de voitures non-européennes

visibility  422 vuesnumbers17 questions
VieTechnoVoiture
quiz image

Le langage SMS pour les nuls - 3ème

visibility  475 vuesnumbers10 questions
TechnoAdolescentSMSPortable
quiz image

Connaissez-vous la marque de voitures Tesla ?

visibility  304 vuesnumbers11 questions
TechnoAutomobile
quiz image

Panneaux d'interdiction - Code de la route

visibility  596 vuesnumbers11 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Connaissez vous les différent types de vélo ?

visibility  260 vuesnumbers16 questions
SportTechnoVélo
quiz image

Histoire de l'aviation - Partie 2

visibility  1041 vuesnumbers10 questions
TechnoAvionHistoire
quiz image

Reconnaitre les réseaux sociaux à partir de leurs icônes (partie 1)

visibility  734 vuesnumbers11 questions
SocialTechnoRéseaux-Sociaux
quiz image

Reconnaitre les réseaux sociaux à partir de leur icône (partie 2)

visibility  472 vuesnumbers11 questions
SocialRéseaux-SociauxTechno
quiz image

Panneaux de danger, partie 1 - Code de la route

visibility  327 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Une fusée: Ariane 5

visibility  452 vuesnumbers14 questions
TechnoEspacefuséefusee
quiz image

Panneaux temporaires - Code de la route

visibility  301 vuesnumbers10 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Panneaux d'entrée en zones - Code de la route

visibility  255 vuesnumbers9 questions
VieTransportsVoituresRoutierCodePermis-de-conduireCirculationCultureG
quiz image

Le langage SMS pour les nuls !

visibility  944 vuesnumbers10 questions
TechnoAdolescentSMSPortable
quiz image

Langage SMS pour les nuls - 2ème partie

visibility  473 vuesnumbers11 questions
TechnoPortableAdolescent
Home