Table des matières[Cacher][Montrer]
- 1. Que signifie JavaScript pour vous ?
- 2. Nommez deux paradigmes de programmation fondamentaux pour le développement JavaScript.
- 3. Qu'est-ce qui distingue JavaScript de Java ?
- 4. Quelles formes de données JavaScript prend-il en charge ?
- 5. Quelles qualités possède JavaScript ?
- 6. Quels sont les inconvénients de l'utilisation de JavaScript ?
- 7. Comment JavaScript permet-il de construire un objet ?
- 8. En JavaScript, comment construit-on un tableau ?
- 9. Comment définir une fonction de nom en JavaScript et qu'est-ce que c'est ?
- 10. En JavaScript, décrivez le levage.
- 11. Qu'impliquent les portées JavaScript d'une variable ?
- 12. Qu'est-ce qui est le plus rapide, script ASP ou JavaScript ?
- 13. Décrivez en quoi l'héritage prototypique diffère de l'héritage classique.
- 14. Écrivez le programme qui ajoutera dynamiquement de nouveaux composants.
- 15. Rappel : qu'est-ce que c'est ?
- 16. Comment déboguer un programme JavaScript ?
- 17. Fermeture : qu'est-ce que c'est ? Donnez une illustration.
- 18. Quelles méthodes existe-t-il pour inclure du code JavaScript dans un fichier HTML ?
- 19. Comment fonctionnent les minuteurs en JavaScript ?
- 20. Que pensez-vous des cookies ?
- 21. Comment ferait-on des cookies ?
- 22. Quelles sont les conventions de nommage des variables JavaScript ?
- 23. Qu'est-ce qui différencie let et var l'un de l'autre ?
- 24. Pourquoi les fonctions auto-invoquantes existent-elles ?
- 25. Qu'est-ce qui distingue la propriété des attributs ?
- 26. En JavaScript, que font les fonctions fléchées ?
- 27. Qu'est-ce qu'un langage typé ?
- 28. En JavaScript, veuillez décrire NEGATIVE INFINITY.
- 29. Qu'est-ce qui distingue undefined de null ?
- 30. Écrivez du code JavaScript pour montrer comment obtenir le code HTML interne d'un élément.
- 31. Quels sont certains des frameworks JavaScript ?
- 32. En JavaScript, qu'est-ce qu'un événement bouillonnant ?
- 33. Que signifie la mémorisation JavaScript ?
- 34. Que signifient importations et exportations ?
- 35. Qu'est-ce que le mode "Strict" de JavaScript et comment est-il activé ?
- 36. Qu'accomplit l'opérateur instanceof ?
- 37. En JavaScript, que signifie une boîte de dialogue ?
- 38. En JavaScript, que fait un générateur ?
- 39. BOM : Qu'est-ce que c'est ?
- 40. Scripts différés : quelle fonction remplissent-ils en JavaScript ?
- Conclusion
JavaScript est un langage de programmation gratuit et open source. Il est destiné à être utilisé pour créer des applications Web. Il est léger et interprétable, ce qui le rend beaucoup plus rapide que les autres langages.
Il est plus facile d'utiliser JavaScript dans Applications Web en raison de son intégration HTML. Pour déterminer son importance, désactivez JavaScript dans votre navigateur et essayez de charger la page.
Ces sites Web ne fonctionneront pas correctement. Leur contenu se comporte souvent mal. Presque tous les navigateurs modernes mélangent HTML, CSS et JavaScript.
JavaScript est l'un des interprétés langages de programmation. Un interpréteur est déjà inclus dans de nombreux navigateurs, dont Google Chrome, Microsoft Internet Explorer et autres.
Ainsi, son code peut être traité par le moteur JavaScript du navigateur. Voici des questions et réponses d'entretien JS de niveau débutant à expert pour votre référence si vous êtes prêt pour un entretien.
Le but de celui-ci est de vous présenter les types de questions que vous pouvez rencontrer lors de votre entretien technique. Commençons.
1. Que signifie JavaScript pour vous ?
Le langage de script Web le plus utilisé, utilisé à la fois pour la programmation côté client et côté serveur, est JavaScript. Le code JavaScript peut être placé dans des pages HTML que les navigateurs Web peuvent comprendre et exécuter, prenant en charge les capacités de programmation orientée objet.
2. Nommez deux paradigmes de programmation fondamentaux pour le développement JavaScript.
La programmation avec JavaScript, un langage multi-paradigmes, permet :
- programmation procédurale/impérative
- Programmation orientée objet (POO)
- Utilisation de la programmation fonctionnelle
- Une approche de programmation basée sur des prototypes ou un héritage basé sur des prototypes (une extension de la POO)
3. Qu'est-ce qui distingue JavaScript de Java ?
Alors que JavaScript est avant tout un langage de script, Java est un langage de programmation. Java est un langage de programmation utilisé par les développeurs pour créer des programmes pouvant s'exécuter sur le système d'exploitation, la machine virtuelle ou le navigateur Web d'un ordinateur. En revanche, le code JS est conçu pour s'exécuter uniquement dans un navigateur.
Mais en utilisant Electron et Node.js, des applications de bureau indépendantes peuvent être créées en JavaScript. Le code Java et JS diffèrent considérablement en ce que ce dernier est disponible au format texte, tandis que le premier nécessite une compilation.
4. Quelles formes de données JavaScript prend-il en charge ?
Les types de données pris en charge par JavaScript incluent :
- Chaîne
- Symbole
- Numéro
- Objet
- Indéfini
- Null
- Boolean
5. Quelles qualités possède JavaScript ?
C'est un langage de script libre et universel.
C'est un langage de programmation interprété léger.
Il est destiné à être utilisé pour créer des applications centrées sur le réseau.
Les deux sont connectés et complémentaires à Java.
6. Quels sont les inconvénients de l'utilisation de JavaScript ?
Les codeurs expérimentés pourront discuter des lacunes de leur langage de prédilection en plus de vanter ses vertus. La sécurité est le pire défaut de JavaScript. Cherchez des informations sur la façon dont il peut être abusé.
Un autre inconvénient de JavaScript est son utilisation généralisée et son adaptabilité, ce qui peut être une épée à double tranchant car il laisse une grande marge de manœuvre pour les bizarreries de programmation qui pourraient entraîner des performances inégales sur divers systèmes.
7. Comment JavaScript permet-il de construire un objet ?
L'idée d'objets est bien prise en charge par JavaScript. En utilisant le littéral d'objet, vous pouvez créer un objet comme ci-dessous :
8. En JavaScript, comment construit-on un tableau ?
Le littéral de tableau peut être utilisé pour définir des tableaux comme suit :
9. Comment définir une fonction de nom en JavaScript et qu'est-ce que c'est ?
Lorsqu'une fonction nommée est définie, elle définit immédiatement un nom. Il peut être décrit comme suit à l'aide du mot-clé function :
10. En JavaScript, décrivez le levage.
Toutes les déclarations de variables et de fonctions sont décalées vers le haut par défaut en JavaScript, ce qui est connu sous le nom de levage. Cela implique que toutes les variables et fonctions, quel que soit l'endroit où elles sont définies, sont déplacées vers le haut de la portée. La portée peut être locale ou internationale.
11. Qu'impliquent les portées JavaScript d'une variable ?
La section de votre programme où une variable est définie est la portée de la variable. Il n'y a que deux étendues qu'une variable JavaScript peut avoir.
- Variables globales : Partout dans votre code JavaScript, vous pouvez voir une variable globale car elle a une portée globale.
- Variables locales : uniquement dans la fonction dans laquelle elle est déclarée, une variable locale sera visible. Local à cette fonction, les arguments de la fonction sont toujours présents.
12. Qu'est-ce qui est le plus rapide, script ASP ou JavaScript ?
Plus rapide est JavaScript. JavaScript peut être exécuté sans l'aide du serveur Web car il s'agit d'un langage côté client. Cependant, comme ASP est un langage côté serveur, il sera toujours plus lent que JavaScript. Actuellement, JavaScript est également un langage côté serveur (nodejs).
13. Décrivez en quoi l'héritage prototypique diffère de l'héritage classique.
JavaScript a la merveilleuse capacité de supprimer les contraintes strictes de l'héritage traditionnel et de permettre aux objets d'hériter des attributs d'autres objets. –
- Héritage classique : à l'aide du mot-clé "new", une fonction constructeur crée une instance. Les attributs d'une classe parent sont transmis à cette nouvelle instance.
- Héritage prototype : un objet existant qui agit comme un prototype est copié pour générer une instance. L'héritage sélectif d'une grande variété d'objets peut être avantageux pour cette instance, qui est fréquemment créée via une fonction d'usine ou "Object.create ()".
14. Écrivez le programme qui ajoutera dynamiquement de nouveaux composants.
15. Rappel : qu'est-ce que c'est ?
Une fonction JavaScript simple envoyée en tant qu'argument ou option à une méthode est appelée rappel. Le terme « rappel » fait référence à une fonction qui est destinée à être exécutée après l'achèvement d'une autre fonction. Les fonctions sont des objets en JavaScript. Les objets JavaScript sont des fonctions. Les fonctions peuvent donc renvoyer d'autres fonctions et recevoir d'autres fonctions en entrée.
16. Comment déboguer un programme JavaScript ?
En appuyant sur la touche appropriée, généralement la touche F12, tous les navigateurs Web contemporains, y compris Chrome, Firefox et autres, sont livrés avec un débogueur intégré qui peut être utilisé à tout moment.
Les utilisateurs peuvent profiter d'une variété de fonctionnalités offertes par les outils de débogage. Un éditeur de code que nous utilisons pour créer des applications JavaScript nous permet également de dépanner le code JavaScript.
17. Fermeture : qu'est-ce que c'est ? Donnez une illustration.
Lorsqu'une variable spécifiée en dehors de la portée actuelle est accessible à partir d'une portée qui se trouve à l'intérieur, des fermetures sont produites. Il permet d'accéder au périmètre d'une fonction externe à partir d'une fonction interne.
Chaque fois qu'une fonction est générée en JavaScript, une fermeture est également produite. Écrivez simplement une fonction dans une autre fonction, exposez-la, puis utilisez-la pour implémenter une fermeture.
18. Quelles méthodes existe-t-il pour inclure du code JavaScript dans un fichier HTML ?
Le code JavaScript peut être inséré principalement de deux manières :
- Lorsque seules quelques lignes de script sont nécessaires dans une page Web, nous pouvons écrire du code JavaScript dans l'élément de script du même fichier HTML.
- Pour ajouter toutes les fonctionnalités de script à une page Web sans encombrer le code, nous pouvons importer un fichier source JavaScript dans un document HTML.
19. Comment fonctionnent les minuteurs en JavaScript ?
Les temporisateurs sont utilisés pour exécuter ou répéter un morceau de code à un moment prédéterminé. Les méthodes setTimeout, setInterval et clearInterval sont utilisées pour ce faire.
À l'aide de la fonction setTimeout(fonction, délai), une minuterie qui exécute une certaine fonction après le délai spécifié est configurée. La fonction setInterval(function, delay) exécute à plusieurs reprises la fonction spécifiée dans le délai spécifié et ne s'arrête qu'en cas d'annulation.
La minuterie est invitée à se terminer à l'aide de la méthode clearInterval(id). Étant donné que les temporisateurs sont exécutés sur un seul thread, les événements peuvent se mettre en file d'attente et attendre d'être exécutés.
20. Que pensez-vous des cookies ?
Un cookie est souvent un petit morceau de données qu'un site Web envoie à l'ordinateur de l'utilisateur et qui y est enregistré par le navigateur Web qui a été utilisé pour visiter la page.
Les cookies sont utilisés pour capturer les activités de consultation du site Web et pour mémoriser les informations pour une utilisation ultérieure.
21. Comment ferait-on des cookies ?
Voici la méthode JavaScript la plus simple pour générer des cookies :
22. Quelles sont les conventions de nommage des variables JavaScript ?
Lorsque vous nommez des variables en JavaScript, vous devez respecter les règles suivantes :
Aucun mot clé JavaScript réservé ne doit être utilisé comme nom de variable. Par exemple, les noms de variable se terminant par break ou booléen ne sont pas valides.
Le nom d'une variable en JavaScript ne doit pas commencer par un nombre (0-9). Ils doivent commencer par une lettre ou le symbole de soulignement.
Par exemple, 123name n'est pas un nom de variable acceptable, bien que _123name ou name123 le soit. La casse est importante dans les noms de variables JavaScript. Test et test, par exemple, sont deux variables distinctes.
23. Qu'est-ce qui différencie let et var l'un de l'autre ?
En JavaScript, les déclarations de variables et de méthodes peuvent être faites en utilisant let ou var. La seule vraie distinction entre ces deux est que le mot-clé let est défini par un bloc, tandis que le mot-clé var est défini par une fonction.
24. Pourquoi les fonctions auto-invoquantes existent-elles ?
Les expressions de fonction appelées immédiatement ou les fonctions anonymes auto-exécutables sont d'autres noms pour elles. Celles-ci sont appelées « fonctions auto-invoquantes » car elles sont appelées automatiquement par le code.
Nous écrivons une fonction et l'appelons. Cependant, des fonctions anonymes peuvent être utilisées si nous voulons qu'une fonction s'exécute automatiquement lorsqu'elle est expliquée et si nous ne l'utiliserons plus. De plus, certaines fonctions n'ont pas de nom.
25. Qu'est-ce qui distingue la propriété des attributs ?
Les attributs des objets JS DOM fonctionnent de la même manière que les variables d'instance pour certains composants. La propriété peut inclure une variété de types de données.
Vous pouvez accéder aux propriétés en interagissant avec l'objet dans Vanilla JS ou en utilisant la fonction prop() de jQuery.
Les attributs se trouvent dans le HTML, pas dans le DOM. Ils sont comparables aux propriétés mais ont moins de capacité. Si des propriétés sont disponibles, il est conseillé de les utiliser plutôt que de travailler avec des attributs.
Un attribut est un type de données chaîne, par opposition à une propriété.
26. En JavaScript, que font les fonctions fléchées ?
En JavaScript, les fonctions fléchées sont une méthode rapide et claire pour écrire des fonctions. Une fonction fléchée a la syntaxe générale suivante :
27. Qu'est-ce qu'un langage typé ?
Les valeurs plutôt que les variables sont liées les unes aux autres dans les langages typés. Il existe deux catégories :
Dynamiquement : contrairement à JS, où une variable peut accepter un nombre ou une chaîne, cela permet à la variable de contenir plusieurs sortes.
Statiquement : dans ce cas, une variable ne peut stocker qu'un seul type ; par exemple, en Java, une variable chaîne ne peut stocker qu'un certain ensemble de caractères.
28. En JavaScript, veuillez décrire NEGATIVE INFINITY.
Lorsqu'un entier négatif est divisé par 0, la propriété statique NEGATIVE INFINITY qui en résulte est créée dans JS. Voici quelques-uns de ses traits cruciaux :
Aucun objet supplémentaire ne doit être créé pour accéder à NEGATIVE INFINITY.
La valeur de la propriété NEGATIVE INFINITY correspond à la valeur négative de la propriété infinity pour l'objet global.
29. Qu'est-ce qui distingue undefined de null ?
Undefined désigne une variable déclarée qui n'a pas encore reçu de valeur. Null est une valeur d'affectation, d'autre part. Il peut être utilisé pour n'indiquer aucune valeur et être affecté à une variable.
Undefined est un type en soi (undefined), alors que null est un objet. Undefined et null sont également deux types différents.
30. Écrivez du code JavaScript pour montrer comment obtenir le code HTML interne d'un élément.
31. Quels sont certains des frameworks JavaScript ?
Un framework d'application créé en JavaScript est appelé framework JavaScript. Sur le plan de contrôler le flux, cela varie d'une bibliothèque JavaScript. Il existe plusieurs frameworks JavaScript disponibles, cependant, quelques-uns des plus populaires incluent :
- Angulaire
- Réagir
- Vue
32. En JavaScript, qu'est-ce qu'un événement bouillonnant ?
Lorsqu'un événement se produit dans un élément à l'intérieur d'un autre élément et que les deux éléments ont enregistré un handle pour cet événement, l'API HTML DOM utilise le bouillonnement d'événement comme méthode de propagation d'événement.
Lorsqu'il y a bouillonnement, l'événement est initialement détecté et traité par l'élément le plus interne avant d'être transmis aux composants environnants.
À partir de cet événement, l'exécution se déplace vers son élément parent. Ensuite, son élément parent reçoit l'exécution, et ainsi de suite jusqu'à l'élément body.
33. Que signifie la mémorisation JavaScript ?
La mémorisation est une méthode d'optimisation qui accélère votre code en enregistrant les résultats des appels de fonction coûteux et en les réutilisant lorsque la même entrée est reçue à nouveau.
Une fonction est dite coûteuse si son exécution nécessite beaucoup de temps et de mémoire car elle effectue des calculs complexes. Un cache est rapidement rempli avec le résultat d'un appel de fonction coûteux.
La même fonction contournera le calcul nécessaire et renverra la valeur mise en cache si elle est appelée à nouveau avec les mêmes paramètres d'entrée.
Étant donné que la fonction n'a pas besoin de refaire les calculs ou les calculs qu'elle a déjà effectués, cette méthode permet d'économiser considérablement le temps et la mémoire utilisés par votre programme.
34. Que signifient importations et exportations ?
Nous pouvons créer du code JavaScript modulaire à l'aide d'importations et d'exportations. Nous pouvons diviser notre code en plusieurs fichiers en utilisant des importations et des exportations. Les exemples comprennent
35. Qu'est-ce que le mode "Strict" de JavaScript et comment est-il activé ?
Vous pouvez améliorer la vérification des erreurs dans votre code en utilisant le mode strict.
Lorsque vous utilisez le mode strict, vous ne pouvez pas ajouter de propriétés à des objets non extensibles, affecter des valeurs à des propriétés en lecture seule, utiliser des variables implicitement déclarées ou affecter des valeurs à des variables en lecture seule.
En commençant un fichier, un programme ou une fonction avec "use strict", vous pouvez activer le mode strict.
36. Qu'accomplit l'opérateur instanceof ?
L'opérateur instanceof détermine si la chaîne de prototypes d'un objet possède des instances de la propriété prototype d'un constructeur. En d'autres termes, l'opérateur instanceof détermine à l'exécution si un objet est une instance d'une classe.
L'opérateur instanceof est utilisé dans l'exemple ci-dessous pour déterminer le type d'utilisateurs de la variable.
37. En JavaScript, que signifie une boîte de dialogue ?
Une boîte d'invite est une boîte avec une zone de texte qui permet à l'utilisateur de fournir une entrée. Une boîte de dialogue demandant une entrée s'affiche via la fonction prompt(). Utilisez une boîte de dialogue si vous souhaitez que l'utilisateur saisisse une valeur avant de voir une page.
L'utilisateur doit sélectionner « OK » ou « Annuler » dans la boîte contextuelle qui apparaît après avoir saisi une valeur pour continuer.
38. En JavaScript, que fait un générateur ?
Les générateurs sont des fonctions qui peuvent être utilisées à différents moments. Le contexte et les liaisons de variables de ces fonctions sont enregistrées et conservées tout au long des réentrées.
L'appel initial d'une fonction génératrice renvoie un type particulier d'itérateur appelé générateur. L'étape suivante consiste à appeler la prochaine méthode du générateur pour utiliser la valeur. Jusqu'à ce qu'elle rencontre le mot clé yield, la fonction générateur continue de fonctionner.
39. BOM : Qu'est-ce que c'est ?
Le BOM, ou modèle d'objet de navigateur, permet aux utilisateurs d'interagir avec les navigateurs, avec lesquels une fenêtre sert de premier objet. En plus d'autres fonctionnalités, l'objet fenêtre possède un document, un historique, un écran, un navigateur et un emplacement.
La fonction de la fenêtre, cependant, est accessible à la fois directement et en référençant la fenêtre.
40. Scripts différés : quelle fonction remplissent-ils en JavaScript ?
Le navigateur commence à analyser le code HTML lorsqu'une page se charge. Par défaut, le navigateur interrompt l'analyse du code HTML lorsqu'il rencontre un script et commence à exécuter le script à la place.
Une fois le script terminé, le navigateur reprend le traitement du code HTML.
Le chargement de la page sera retardé par un serveur lent ou un script volumineux. Les scripts différés retardent l'exécution du script jusqu'à ce que le document ait été traité.
Ce retard dans l'exécution du script réduit le temps de chargement de la page Web.
Conclusion
Nous espérons que ces questions d'entretien JavaScript vous seront utiles, que vous soyez un développeur se préparant pour une réunion ou un responsable du recrutement essayant de trouver le bon candidat.
N'oubliez pas que l'expertise et les connaissances techniques ne représentent qu'une petite partie du processus de recrutement. Pour vous assurer que vous décrochez (ou trouvez le candidat approprié pour) le poste, l'expérience passée et les compétences non techniques sont tout aussi cruciales.
Sachez qu'il existe souvent plusieurs bonnes réponses aux questions d'entretien JavaScript ouvertes. Les enquêteurs sont intéressés par le raisonnement derrière vos réponses, pas seulement par la réponse que vous avez mémorisée.
Soyez prêt pour les demandes de suivi sur la façon dont vous êtes arrivé à votre réponse et soyez toujours en mesure d'expliquer votre processus de réflexion.
Vérifier Série d'interviews de Hashdork pour une aide à la préparation des entretiens.
Arun
Wow, cet article m'a beaucoup aidé lors de ma préparation à l'entretien Javascript