Maison > Article > interface Web > Combien de questions d’entretien AJAX courantes connaissez-vous ? 12 questions d'entretien ajax courantes et leurs réponses
Cet article parle principalement des questions et réponses d'entretien sur ajax. Vous pouvez en savoir plus et voir comment les intervieweurs ont posé les questions et quelles sont les bonnes réponses. Jetons un coup d'œil à cet article maintenant
[Recommandations de sujets connexes : questions d'entretien ajax (2020)]
1. interagir avec l'arrière-plan ? Alors pouvez-vous parler de quelques paramètres dans l'ajax encapsulé ?
url : L'adresse à laquelle envoyer la demande.
type : La méthode de requête (post ou get) est par défaut get.
async : requête asynchrone synchrone, true par défaut, toutes les requêtes sont des requêtes asynchrones.
timeout : paramètre de délai d'attente, unité milliseconde
données : doit être un paramètre de type Objet ou Chaîne, données envoyées au serveur
cache : la valeur par défaut est vraie (lorsque dataType Lorsqu'il s'agit d'un script, la valeur par défaut est false), le définir sur false ne chargera pas les informations de demande à partir du cache du navigateur.
dataType : le type de données qui devrait être renvoyé par le serveur.
Les types disponibles sont les suivants :
xml : Renvoie un document XML pouvant être traité avec JQuery.
html : renvoie les informations HTML en texte brut ; la balise de script incluse sera exécutée une fois insérée dans le DOM.
script : renvoie le code JavaScript en texte brut. Les résultats ne sont pas automatiquement mis en cache.
json : renvoie les données JSON.
jsonp : format JSONP. Lors de l'appel d'une fonction au format JSONP, tel que myurl?callback=?, JQuery remplacera automatiquement le dernier "?" par le nom de fonction correct pour exécuter la fonction de rappel.
text : renvoie une chaîne de texte brut.
succès : La fonction de rappel appelée une fois la requête réussie a deux paramètres.
(1) Données renvoyées par le serveur et traitées selon le paramètre dataType.
(2) Une chaîne décrivant le statut.
erreur : le paramètre doit être de type Fonction et la fonction est appelée lorsque la requête échoue. Cette fonction a 3 paramètres
(1) Objet XMLHttpRequest
(2) Message d'erreur
(3) Objet d'erreur capturé (facultatif)
complete :function(XMLHttpRequest,status){ //Paramètres d'exécution finaux une fois la requête terminée
Données 2.json Comment gérer son format Avez-vous un format fixe dans votre travail précédent ? Si j'envoie une demande de suppression d'un élément de données dans les données. Comment savoir si la suppression a réussi, ou où sera-t-il affiché après la suppression
JSON.parse() Convertir en objet JSON ? analyser en fonction des données et les mettre sur la page.
Format : {} et [] combinent la chaîne JSON épissée
pour envoyer une demande de suppression de données, l'arrière-plan renverra le résultat du traitement, le frontend jugera s'il a réussi en fonction du résultat renvoyé, puis traitez les éléments de la page.
3. Avez-vous déjà rencontré cette situation ? Dans le navigateur IE, les données de l'image d'arrière-plan ont changé mais le client n'a pas changé. Il a rappelé que la méthode
JQuery.ajax() du cache du navigateur, définie sur false, ne chargera pas la requête à partir du cache du navigateur,
ni n'utilisera la méthode post pour demander des données. ne sera pas mis en cache et les données seront demandées à nouveau à chaque fois
4. L'idée d'implémentation de l'onglet
Temps de survol de la souris, méthode d'appel, transmission ceci, pour tous Masquer une partie du contenu de l'onglet, afficher ceci, et contrôler l'affichage
5 L'idée de mise en œuvre de la cascade
Généralement, régionale. les données utilisent le stockage de tableaux bidimensionnels, obtenez-les en arrière-plan et stockez-les plus tard
Trouvez les données du tableau bidimensionnel correspondantes selon l'option de la première liste déroulante, bouclez une nouvelle option. () ajoutez dans la liste déroulante
6. Idées pour implémenter des images de carrousel
La première méthode :
Nommez les images dans l'ordre et utilisez une minuterie pour les modifier. le chemin des images toutes les quelques secondes
Deuxième type :
Utilisez la technologie de défilement transparent pour placer toutes les images dans la page. La minuterie défile et détermine la distance de défilement. égal à 0 et le minuteur est en pause, combien de secondes avant de démarrer le minuteur.
7. Parlez de ce que vous comprenez sur bootstrap
Bootstrap est développé sur la base de HTML5 et CSS3. Il est plus personnalisé et humanisé basé sur jQuery, il vous suffit de donner le. balisez un nom de classe correspondant, vous pouvez former un ensemble de styles de site Web uniques à Bootstrap, et il est compatible avec la plupart des plug-ins jQuery.
8. La différence entre angulairejs et JQ
JQ est d'abord obtenue puis utilisée.
Utilisez Angularjs directement
9 La différence entre JQmobile et JQ
.jQuery Mobile 是创建移动 web 应用程序的框架。jQuery Mobile 适用于所有流行的智能手机和平板电脑。jQuery Mobile 使用 HTML5 和 CSS3 通过尽可能少的脚本对页面进行布局
(1) jQuery est une bibliothèque js qui fournit principalement des sélecteurs, des modifications de propriétés, des liaisons d'événements, etc.
(2) jQuery UI est un plug-in conçu sur la base de jQuery et tirant parti de l'extensibilité de jQuery. Fournit certains éléments d'interface couramment utilisés, tels que les boîtes de dialogue, les comportements de déplacement, les comportements de redimensionnement, etc.
(3) jQuery lui-même se concentre sur l'arrière-plan et n'a pas une belle interface, tandis que jQuery UI compense les défauts du premier. Il fournit une superbe interface d'affichage, ce qui la rend plus facile à accepter par les gens. Il y a à la fois des coulisses puissantes et une façade magnifique. jQuery UI est un plug-in jQuery, mais il fait spécifiquement référence au plug-in orienté UI officiellement maintenu par jQuery.
10. Les quatre parties d'ajax :
var xmlhttp = new XMLHttpRequest(); xmlhttp.open("post||get","URL",true||false); xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); xmlhttp.onreadystatechange = callBack; xmlhttp.send(null);
11. Quels sont les types de données reçues par ajax ?
Chaîne
Chaîne JSON
Objet JSON
12. Où ajax est nécessaire et où il ne l'est pas, quels sont les avantages et les inconvénients d'ajax ?
Lorsque la page ne saute pas pour s'actualiser, lors du traitement des données de manière asynchrone, la fonction de saisie semi-automatique du formulaire ---- en utilisant Ajax,
Après soumission, la page d'origine ne sera plus utilisée , et vous pouvez sauter Pour des fonctions telles que l'actualisation et l'interrogation, Ajax n'a pas besoin de données.
Le plus grand avantage d'AJAX est qu'il peut communiquer avec le serveur pour conserver les données sans actualiser la page entière. Cela permet aux applications Web de répondre plus rapidement aux interactions des utilisateurs et d'éviter d'envoyer des informations inchangées sur le réseau, réduisant ainsi le temps d'attente des utilisateurs et apportant une très bonne expérience utilisateur. <2>. Communiquez avec le serveur de manière asynchrone.
AJAX utilise une méthode asynchrone pour communiquer avec le serveur, sans interrompre le fonctionnement de l'utilisateur, et a une capacité de réponse plus rapide. Optimise la communication entre le navigateur et le serveur, réduisant ainsi la transmission de données inutile, le temps et le trafic de données sur le réseau.
<3>. Équilibrage de charge front-end et back-end.
AJAX peut transférer une partie du travail précédemment chargé par le serveur vers le client, en utilisant la capacité inactive du client pour le traitement, en réduisant la charge sur le serveur et la bande passante, et en économisant de l'espace et des coûts de location du haut débit. Et pour réduire la charge sur le serveur, le principe d'AJAX est « d'obtenir des données à la demande », ce qui peut minimiser la charge sur le serveur causée par les demandes et réponses redondantes et améliorer les performances du site.
<4>. Largement pris en charge sur la base des normes.
AJAX est basé sur une technologie standardisée et largement prise en charge et ne nécessite pas de téléchargement de plug-ins ou d'applets de navigateur, mais nécessite que le client autorise l'exécution de JavaScript sur le navigateur. À mesure qu'Ajax mûrit, certaines bibliothèques de programmes simplifiant l'utilisation d'Ajax sont également apparues. De même, une autre technologie de programmation d'assistance a émergé pour fournir des fonctionnalités alternatives aux utilisateurs qui ne prennent pas en charge JavaScript.
<5>. L'interface est séparée de l'application.
Ajax sépare l'interface et l'application dans le WEB (ce qui peut également être considéré comme séparant les données et la présentation), ce qui favorise la division du travail et la coopération, réduisant ainsi les erreurs d'application WEB causées par des erreurs non techniques. le personnel modifie la page, améliore l'efficacité et est plus adapté aux systèmes de publication actuels.
Inconvénients :
<1>.AJAX tue les fonctions Retour et Historique, ce qui constitue une destruction du mécanisme du navigateur.
Dans le cas de pages mises à jour dynamiquement, les utilisateurs ne peuvent pas revenir à l'état de la page précédente car le navigateur ne peut mémoriser que les pages statiques de l'historique. La différence entre une page qui a été entièrement lue et une page qui a été modifiée dynamiquement est très subtile ; les utilisateurs s'attendront souvent à ce que cliquer sur le bouton Précédent annule leur opération précédente, mais dans une application Ajax, cela ne sera pas possible.
Le bouton retour est une fonctionnalité importante d'un site Web standard, mais il ne fonctionne pas bien avec js. Il s'agit d'un problème sérieux causé par Ajax, car les utilisateurs espèrent souvent annuler l'opération précédente en revenant en arrière. Alors, y a-t-il une solution à ce problème ? La réponse est oui. Ceux qui ont utilisé Gmail savent que la technologie Ajax utilisée sous Gmail résout ce problème. Cependant, cela ne change pas le mécanisme d'Ajax. La façon de procéder consiste à créer ou à utiliser un IFRAME masqué pour reproduire les modifications sur la page lorsque l'utilisateur clique sur le bouton Précédent pour accéder à l'historique. (Par exemple, lorsque l'utilisateur clique à nouveau dans Google Maps, il recherche dans un IFRAME masqué, puis reflète les résultats de la recherche sur l'élément Ajax pour restaurer l'état de l'application tel qu'il était à ce moment-là.)
Cependant, bien que ce problème puisse être résolu, le coût de développement qu'il entraîne est très élevé et va à l'encontre du développement rapide requis par le framework Ajax. Il s'agit d'un problème très grave causé par l'Ajax.
Un point connexe est que l'utilisation de mises à jour dynamiques des pages rend difficile pour les utilisateurs d'enregistrer un état spécifique dans les favoris. Des solutions à ce problème ont également émergé, dont la plupart utilisent des identifiants de fragments d'URL (souvent appelés ancres, la partie après le # dans l'URL) pour garder une trace et permettre à l'utilisateur de revenir à un état d'application spécifié. (De nombreux navigateurs permettent à JavaScript de mettre à jour dynamiquement les ancres, ce qui permet aux applications Ajax de mettre à jour les ancres tout en mettant à jour le contenu affiché.) Ces solutions résolvent également de nombreux arguments concernant la non prise en charge d'un bouton de retour. (Si vous souhaitez en savoir plus, rendez-vous sur le site Web PHP chinois Colonne Manuel de développement AJAX pour apprendre)
<2>.Problèmes de sécurité AJAX.
La technologie AJAX apporte non seulement une bonne expérience utilisateur aux utilisateurs, mais apporte également de nouvelles menaces de sécurité aux entreprises informatiques. La technologie Ajax revient à établir un canal direct pour les données d'entreprise. Cela permet aux développeurs d’exposer par inadvertance davantage de données et de logique de serveur qu’auparavant. La logique Ajax peut être masquée par les technologies d'analyse de sécurité côté client, permettant ainsi aux pirates de créer de nouvelles attaques à partir de serveurs distants. Ajax est également difficile à éviter certaines faiblesses de sécurité connues, telles que les attaques de scripts intersites, les attaques par injection SQL et les vulnérabilités de sécurité basées sur les informations d'identification.
<3>. Faible prise en charge des moteurs de recherche.
Le support des moteurs de recherche est relativement faible. S'il est mal utilisé, AJAX augmentera le trafic de données réseau, réduisant ainsi les performances de l'ensemble du système.
<4>. Détruisez le mécanisme de gestion des exceptions du programme.
Au moins pour l'instant, les frameworks Ajax comme Ajax.dll et Ajaxpro.dll détruiront le mécanisme d'exception du programme. Concernant ce problème, je l'ai rencontré lors du processus de développement, mais après vérification, il n'y a quasiment aucune introduction pertinente sur Internet. Plus tard, nous avons fait une expérience et utilisé Ajax et les modes de soumission de formulaires traditionnels pour supprimer une donnée... ce qui a apporté de grandes difficultés à notre débogage.
<5>. Viole l'intention initiale du positionnement de l'URL et des ressources.
Par exemple, si je vous donne une adresse URL, si la technologie Ajax est utilisée, peut-être que ce que vous voyez sous l'adresse URL est différent de ce que je vois sous cette adresse URL. Ceci est contraire à l’intention initiale du positionnement des ressources.
<6>.AJAX ne prend pas bien en charge les appareils mobiles.
Certains appareils portables (tels que les téléphones mobiles, les PDA, etc.) ne prennent actuellement pas très bien en charge Ajax. Par exemple, lorsque nous ouvrons un site Web utilisant la technologie Ajax sur un navigateur mobile, c'est actuellement le cas. pas le soutenir.
<7>. Le client est trop gros et trop de code client entraîne des coûts de développement.
C'est compliqué à écrire et sujet aux erreurs ; il existe de nombreux codes redondants (c'est un problème courant d'AJAX d'inclure des fichiers js dans des couches, plus beaucoup de code côté serveur dans le passé est désormais placé sur le client) ; il détruit le Web des standards d'origine.
Cet article se termine ici (si vous voulez en voir plus, rendez-vous dans la colonne Manuel de l'utilisateur AJAX du site Web PHP chinois pour savoir si). vous avez des questions Vous pouvez laisser un message ci-dessous pour poser des questions.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!