


5 façons d'appeler des fonctions dans les compétences JavaScript_javascript
Cet article présente en détail les méthodes et principes des différents appels de fonctions en JavaScript, ce qui est très utile pour comprendre les fonctions JavaScript !
JavaScript, 5 façons d'appeler des fonctions
À maintes reprises, je trouve que le code JavaScript bogué est le résultat d'une mauvaise compréhension du fonctionnement des fonctions JavaScript (j'ai écrit une grande partie de ce code, d'ailleurs, JavaScript possède des caractéristiques de programmation fonctionnelle, lorsque nous choisissons d'y faire face). cela, cela deviendra un obstacle à notre progression
.En tant que débutant, testons cinq méthodes d'appel de fonctions. En apparence, nous penserons que ces fonctions sont très similaires aux fonctions en C#, mais nous verrons dans un instant qu'il existe encore des différences très importantes. Ignorer ces différences rendra sans aucun doute difficile le suivi des bugs. Créons d'abord une fonction simple, qui sera utilisée ci-dessous. Cette fonction renvoie uniquement la valeur actuelle de ceci et des deux paramètres fournis
.La méthode la plus couramment utilisée, mais malheureusement, les appels de fonctions globaux
Lorsque nous avons appris Javascript, nous avons appris à définir des fonctions en utilisant la syntaxe de l'exemple ci-dessus.
, on sait aussi qu'appeler cette fonction est très simple, il suffit de :
makeArray('un', 'deux');
// => [ fenêtre, 'un', 'deux' ]
Attendez une minute. C'est quoi cette fenêtre
alert( typeof window.methodThatDoesntExist );
// => non défini
alert(typeof window.makeArray);
// =>
window.makeArray('un', 'deux');
// => [ fenêtre, 'un', 'deux' ]
Je dis que la méthode d'appel la plus courante est regrettable car elle fait que les fonctions que nous déclarons sont globales par défaut. Nous savons tous que les membres globaux ne sont pas une bonne pratique en programmation. Cela est particulièrement vrai en JavaScript, en JavaScript Évitez d'utiliser. membres mondiaux, vous ne le regretterez pas.
Fonction JavaScript appelant la règle 1
Dans les fonctions appelées directement sans objet propriétaire explicite, telles que myFunction(), la valeur de this fera en sorte que la valeur de this devienne l'objet par défaut (fenêtre dans le navigateur).
Appel de fonction
Créons maintenant un objet simple, en utilisant la fonction makeArray comme l'une de ses méthodes. Nous utiliserons json pour déclarer un objet, et nous appellerons également cette méthode
.
//création de l'objet
var arrayMaker = {
SomeProperty : 'une certaine valeur ici',
Créer : makeArray
};
//invoque la méthode make()
arrayMaker.make('un', 'deux');
// => [ arrayMaker, 'un', 'deux' ]
// syntaxe alternative, en utilisant des crochets
arrayMaker['make']('one', 'two');
// => [ arrayMaker, 'un', 'deux' ]
Voir la différence ici, la valeur de this devient l'objet lui-même. Vous vous demandez peut-être pourquoi la définition de la fonction d'origine n'a pas changé, pourquoi n'est-ce pas une fenêtre. Eh bien, c'est ce que la fonction est passée dans JSavacript. une fonction est un type de données standard en JavaScript, un objet pour être exact. Vous pouvez les transmettre ou les copier, c'est comme si la fonction entière avec la liste de paramètres et le corps de la fonction était copiée et affectée à la marque d'attribut arrayMaker, puis définissez un. arrayMaker comme ceci :
var arrayMaker = {
SomeProperty : 'une certaine valeur ici',
Faire : fonction (arg1, arg2) {
return [ this, arg1, arg2 ];
>
};
Fonction JavaScript appelant la règle 2
Dans une syntaxe d'appel de méthode, telle que obj.myFunction() ou obj['myFunction'](), la valeur de this est obj
C'est une source majeure de bugs dans le code de gestion des événements, consultez ces exemples
Cliquer sur le premier bouton affichera "btn" car il s'agit d'un appel de méthode, et c'est l'objet (élément bouton) auquel il appartient. Cliquer sur le deuxième bouton affichera "window" car buttonClicked est appelé directement (contrairement à obj. buttonClicked().) C'est la même chose que notre troisième bouton, plaçant la fonction de gestionnaire d'événements directement dans l'étiquette. Ainsi, le résultat du clic sur le troisième bouton est le même que sur le deuxième
.
L'utilisation d'une bibliothèque JS comme jQuery présente l'avantage que lorsqu'une fonction de gestion d'événements est définie dans jQuery, la bibliothèque JS aidera à réécrire la valeur de celle-ci pour garantir qu'elle contient une référence à l'élément source d'événement actuel,
//Utilisez jQuery
$('#btn1').click( function() {
alert( this.id ); // jQuery garantit que 'this' sera le bouton
});
Comment jQuery surcharge-t-il la valeur de ceci ? Continuer la lecture
Les deux autres : apply() et call()
Plus vous utilisez des fonctions JavaScript, plus vous constatez que vous devez transmettre des fonctions et les appeler dans différents contextes, tout comme Qjuery le fait dans les gestionnaires d'événements, et vous devez souvent réinitialiser la valeur de ceci. vous, les fonctions sont également des objets en Javascript. Les objets fonction contiennent des méthodes prédéfinies, dont deux sont apply() et call(). Nous pouvons les utiliser pour modifier cela.
.
var gasGuzzler = { année : 2008, modèle : 'Dodge Bailout' };
makeArray.apply( gasGuzzler, [ 'un', 'deux' ] );
// => [ gasGuzzler, 'un', 'deux' ]
makeArray.call( gasGuzzler, 'un', 'deux' );
// => [ gasGuzzler, 'un', 'deux' ]
Les deux méthodes sont similaires. La différence réside dans les paramètres suivants. Function.apply() utilise un tableau pour transmettre à la fonction, tandis que Function.call() transmet ces paramètres indépendamment. En pratique, vous constaterez que apply(. ) est plus pratique dans la plupart des cas.
Fonction JSavascript appelant la règle 3
Si nous voulons surcharger la valeur de this sans copier la fonction dans une méthode, nous pouvons utiliser myFunction.apply( obj ) ou myFunction.call( obj ).
Constructeur
Je ne veux pas approfondir la définition des types en Javascript, mais pour le moment, nous devons savoir qu'il n'y a pas de classes en Javascript et que tout type personnalisé nécessite une fonction d'initialisation, définie à l'aide de l'objet prototype (comme un attribut de la fonction d'initialisation) Votre type est aussi un joli isme, créons un type simple
//Déclarer un constructeur
fonction ArrayMaker (arg1, arg2) {
This.someProperty = 'peu importe';
This.theArray = [ this, arg1, arg2 ];
>
// Déclare la méthode d'instanciation
ArrayMaker.prototype = {
UneMéthode : fonction () {
alert( 'uneMéthode appelée');
},
GetArray : fonction () {
return this.theArray;
>
};
var am = new ArrayMaker( 'un', 'deux' );
var autre = new ArrayMaker( 'first', 'second' );
am.getArray();
// => [ suis, 'un' , 'deux' ]
Une chose très importante et remarquable est le nouvel opérateur qui apparaît avant l'appel de fonction. Sans cela, votre fonction est comme une fonction globale, et les propriétés que nous créons seront créées sur l'objet global (fenêtre), et vous. Je ne veux pas cela, un autre sujet est que, comme il n'y a pas de valeur de retour dans votre constructeur, si vous oubliez d'utiliser l'opérateur new, certaines de vos variables seront affectées de manière non définie. Pour cette raison, la fonction du constructeur l'est. une bonne habitude de commencer par une majuscule, qui peut servir de rappel pour ne pas oublier le nouvel opérateur précédent lors de l'appel
.Avec cette prudence, le code de la fonction d'initialisation est similaire à la fonction d'initialisation que vous écrivez dans d'autres langues. La valeur de ceci sera l'objet que vous créerez.
Règle d'appel de fonction Javascript 4
Lorsque vous utilisez une fonction comme fonction d'initialisation, comme MyFunction(), le runtime Javascript attribuera la valeur de celle-ci à l'objet nouvellement créé.
J'espère que comprendre les différences dans la façon dont les différentes fonctions sont appelées gardera votre code JavaScript à l'abri des bogues, et s'assurer que vous en connaissez toujours la valeur est la première étape pour les éviter.

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

WeChat est l'un des outils de chat traditionnels. Nous pouvons rencontrer de nouveaux amis, contacter d'anciens amis et entretenir l'amitié entre amis grâce à WeChat. Tout comme il n’existe pas de banquet qui ne se termine jamais, des désaccords surviendront inévitablement lorsque les gens s’entendront bien. Lorsqu'une personne affecte extrêmement votre humeur ou que vous constatez que vos points de vue sont incohérents lorsque vous vous entendez bien et que vous ne pouvez plus communiquer, nous devrons peut-être supprimer les amis WeChat. Comment supprimer des amis WeChat ? La première étape pour supprimer des amis WeChat : appuyez sur [Carnet d'adresses] sur l'interface principale de WeChat ; la deuxième étape : cliquez sur l'ami que vous souhaitez supprimer et entrez [Détails] ; la troisième étape : cliquez sur [...] en haut. coin droit ; Étape 4 : Cliquez sur [Supprimer] ci-dessous ; Étape 5 : Après avoir compris les invites de la page, cliquez sur [Supprimer le contact] ;

Tomato Novel est un logiciel de lecture de romans très populaire. Nous avons souvent de nouveaux romans et bandes dessinées à lire dans Tomato Novel. De nombreux amis souhaitent également gagner de l'argent de poche et éditer le contenu de leur roman. Je veux écrire dans du texte. Alors, comment pouvons-nous y écrire le roman ? Mes amis ne le savent pas, alors allons ensemble sur ce site. Prenons le temps de regarder une introduction à la façon d'écrire un roman. Partagez le didacticiel du roman Tomato sur la façon d'écrire un roman. 1. Ouvrez d'abord l'application de roman gratuite Tomato sur votre téléphone mobile et cliquez sur Personal Center - Writer Center 2. Accédez à la page Tomato Writer Assistant - cliquez sur Créer un nouveau livre. à la fin du roman.

Les cartes mères colorées jouissent d'une grande popularité et d'une part de marché élevée sur le marché intérieur chinois, mais certains utilisateurs de cartes mères colorées ne savent toujours pas comment accéder au BIOS pour les paramètres ? En réponse à cette situation, l'éditeur vous a spécialement proposé deux méthodes pour accéder au bios coloré de la carte mère. Venez l'essayer ! Méthode 1 : utilisez la touche de raccourci de démarrage du disque U pour accéder directement au système d'installation du disque U. La touche de raccourci de la carte mère Colorful pour démarrer le disque U en un seul clic est ESC ou F11. Tout d'abord, utilisez Black Shark Installation Master pour créer un Black. Disque de démarrage Shark U, puis allumez l'ordinateur lorsque vous voyez l'écran de démarrage, appuyez continuellement sur la touche ESC ou F11 du clavier pour accéder à une fenêtre de sélection de la séquence d'éléments de démarrage. Déplacez le curseur à l'endroit où "USB. " s'affiche, puis

Malheureusement, les gens suppriment souvent certains contacts accidentellement pour certaines raisons. WeChat est un logiciel social largement utilisé. Pour aider les utilisateurs à résoudre ce problème, cet article explique comment récupérer les contacts supprimés de manière simple. 1. Comprendre le mécanisme de suppression des contacts WeChat. Cela nous offre la possibilité de récupérer les contacts supprimés. Le mécanisme de suppression des contacts dans WeChat les supprime du carnet d'adresses, mais ne les supprime pas complètement. 2. Utilisez la fonction intégrée « Récupération du carnet de contacts » de WeChat. WeChat fournit une « Récupération du carnet de contacts » pour économiser du temps et de l'énergie. Les utilisateurs peuvent récupérer rapidement les contacts précédemment supprimés grâce à cette fonction. 3. Accédez à la page des paramètres WeChat et cliquez sur le coin inférieur droit, ouvrez l'application WeChat « Moi » et cliquez sur l'icône des paramètres dans le coin supérieur droit pour accéder à la page des paramètres.

La définition de la taille de la police est devenue une exigence de personnalisation importante à mesure que les téléphones mobiles deviennent un outil important dans la vie quotidienne des gens. Afin de répondre aux besoins des différents utilisateurs, cet article présentera comment améliorer l'expérience d'utilisation du téléphone mobile et ajuster la taille de la police du téléphone mobile grâce à des opérations simples. Pourquoi avez-vous besoin d'ajuster la taille de la police de votre téléphone mobile - L'ajustement de la taille de la police peut rendre le texte plus clair et plus facile à lire - Adapté aux besoins de lecture des utilisateurs d'âges différents - Pratique pour les utilisateurs malvoyants qui souhaitent utiliser la taille de la police fonction de configuration du système de téléphonie mobile - Comment accéder à l'interface des paramètres du système - Dans Rechercher et entrez l'option "Affichage" dans l'interface des paramètres - recherchez l'option "Taille de la police" et ajustez-la. application - téléchargez et installez une application prenant en charge l'ajustement de la taille de la police - ouvrez l'application et entrez dans l'interface des paramètres appropriée - en fonction de l'individu

Un résumé de la façon d'obtenir les droits d'administrateur Win11 Dans le système d'exploitation Windows 11, les droits d'administrateur sont l'une des autorisations très importantes qui permettent aux utilisateurs d'effectuer diverses opérations sur le système. Parfois, nous pouvons avoir besoin d'obtenir des droits d'administrateur pour effectuer certaines opérations, telles que l'installation de logiciels, la modification des paramètres du système, etc. Ce qui suit résume quelques méthodes pour obtenir les droits d'administrateur Win11, j'espère que cela pourra vous aider. 1. Utilisez les touches de raccourci. Dans le système Windows 11, vous pouvez ouvrir rapidement l'invite de commande via les touches de raccourci.

Les jeux mobiles font désormais partie intégrante de la vie des gens avec le développement de la technologie. Il a attiré l'attention de nombreux joueurs avec sa jolie image d'œuf de dragon et son processus d'éclosion intéressant, et l'un des jeux qui a beaucoup attiré l'attention est la version mobile de Dragon Egg. Pour aider les joueurs à mieux cultiver et faire grandir leurs propres dragons dans le jeu, cet article vous présentera comment faire éclore des œufs de dragon dans la version mobile. 1. Choisissez le type d'œuf de dragon approprié. Les joueurs doivent choisir soigneusement le type d'œuf de dragon qu'ils aiment et qui leur conviennent, en fonction des différents types d'attributs et de capacités d'œuf de dragon fournis dans le jeu. 2. Améliorez le niveau de la machine d'incubation. Les joueurs doivent améliorer le niveau de la machine d'incubation en accomplissant des tâches et en collectant des accessoires. Le niveau de la machine d'incubation détermine la vitesse d'éclosion et le taux de réussite de l'éclosion. 3. Collectez les ressources nécessaires à l'éclosion. Les joueurs doivent être dans le jeu.

Explication détaillée de la méthode de requête de version Oracle Oracle est l'un des systèmes de gestion de bases de données relationnelles les plus populaires au monde. Il offre des fonctions riches et des performances puissantes et est largement utilisé dans les entreprises. Dans le processus de gestion et de développement de bases de données, il est très important de comprendre la version de la base de données Oracle. Cet article présentera en détail comment interroger les informations de version de la base de données Oracle et donnera des exemples de code spécifiques. Interrogez la version de base de données de l'instruction SQL dans la base de données Oracle en exécutant une simple instruction SQL
