Application partielle
Fixez certains arguments et réutilisez les fonctions.
Application partielle est une leçon JavaScript Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage JavaScript Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours JavaScript Academy comprend 4 leçons au total.
Qu’est-ce que l’application partielle
L’application partielle consiste à prendre une fonction qui nécessite plusieurs arguments et à en fixer certains à l’avance, pour produire une nouvelle fonction qui n’a besoin que des autres.
Elle vous permet de créer des fonctions spécialisées à partir de fonctions générales. Une fonction générique multiply(a, b) peut devenir une fonction spécialisée double(b) en fixant a = 2.
Une fonction avec plusieurs arguments
Commencez par une fonction polyvalente. Ici, add prend trois nombres. Il est fréquent de l’appeler encore et encore avec le même premier argument.
function add(a, b, c) {
return a + b + c;
}
console.log(add(1, 2, 3));
console.log(add(1, 10, 100));Fixer les arguments manuellement
La forme la plus simple d’application partielle consiste à utiliser une fonction enveloppe qui code en dur un argument et transmet les autres.
function add(a, b, c) {
return a + b + c;
}
function addTen(b, c) {
return add(10, b, c);
}
console.log(addTen(2, 3));
console.log(addTen(20, 30));Application partielle avec bind
Function.prototype.bind est conçu pour cela. Son premier argument définit this ; tous les arguments suivants sont préremplis en partant de la gauche.
Transmettez null pour this lorsque sa valeur vous importe peu.
function add(a, b, c) {
return a + b + c;
}
const addTen = add.bind(null, 10);
console.log(addTen(2, 3));
console.log(addTen(20, 30));Lier plusieurs arguments
Vous pouvez fixer plusieurs arguments initiaux en une seule fois. La fonction renvoyée prend tous ceux qui restent.
function add(a, b, c) {
return a + b + c;
}
const addElevenAndTwo = add.bind(null, 11, 2);
console.log(addElevenAndTwo(7));
console.log(addElevenAndTwo(100));Un assistant réutilisable d’application partielle
Vous pouvez écrire votre propre assistant partial, qui capture les arguments prédéfinis avec le paramètre de reste et les fusionne avec les suivants grâce à la syntaxe d’expansion.
function partial(fn, ...preset) {
return function (...later) {
return fn(...preset, ...later);
};
}
function greet(greeting, name) {
return greeting + ', ' + name + '!';
}
const sayHello = partial(greet, 'Hello');
console.log(sayHello('Ada'));
console.log(sayHello('Linus'));Spécialiser des fonctions générales
L’application partielle est particulièrement utile lorsqu’une fonction générale donne naissance à de nombreuses petites fonctions spécialisées et lisibles.
function multiply(a, b) {
return a * b;
}
const double = multiply.bind(null, 2);
const triple = multiply.bind(null, 3);
console.log(double(5));
console.log(triple(5));Application partielle avec des tableaux
Les fonctions spécialisées s’intègrent naturellement aux méthodes de tableau comme map.
function power(exponent, base) {
return Math.pow(base, exponent);
}
const square = power.bind(null, 2);
console.log([1, 2, 3, 4].map(square));Préremplir la configuration
Un usage courant dans les applications réelles consiste à fixer une valeur de configuration, comme un taux de taxe ou un symbole monétaire, puis à réutiliser le résultat partout.
function format(symbol, amount) {
return symbol + amount.toFixed(2);
}
const usd = format.bind(null, '$');
const eur = format.bind(null, '\u20AC');
console.log(usd(9.5));
console.log(eur(9.5));Application partielle ou paramètres par défaut
Les paramètres par défaut fournissent une valeur de remplacement lorsqu’un argument est manquant. L’application partielle fige une valeur, de sorte que l’appelant ne peut plus la modifier pour cet emplacement.
Ces mécanismes résolvent des problèmes différents : les valeurs par défaut sont facultatives, tandis que les applications partielles fixent les valeurs.
function log(level, message) {
return '[' + level + '] ' + message;
}
const error = log.bind(null, 'ERROR');
console.log(error('Disk full'));
console.log(error('Timeout'));Pourquoi l’application partielle est importante
L’application partielle réduit les répétitions, exprime clairement l’intention et constitue la base de la curryfication. Chaque fois que vous transmettez encore et encore le même premier argument, envisagez de le fixer une seule fois.
function between(min, max, value) {
return value >= min && value <= max;
}
const isPercentage = between.bind(null, 0, 100);
console.log(isPercentage(50));
console.log(isPercentage(150));Vérification rapide
Que renvoie fn.bind(null, 5) ?
Récapitulatif : application partielle
Vous avez appris à fixer des arguments à l’avance :
- Enveloppes manuelles : elles codent en dur un argument et transmettent les autres.
- bind(null, ...args) : cette méthode préremplit les arguments en partant de la gauche.
- Un assistant
partialpersonnalisé utilise les paramètres de reste et la syntaxe d’expansion. - L’application partielle crée des fonctions spécialisées claires et réutilisables, et prépare la voie à la curryfication.
Questions Fréquemment Posées
La leçon « Application partielle » est-elle gratuite ?
Oui — le texte complet de « Application partielle » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours JavaScript Academy, passe à CoddyKit PRO. Le cours JavaScript Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Application partielle » ?
Fixez certains arguments et réutilisez les fonctions. Tu pratiques JavaScript Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer JavaScript Academy ?
Aucune expérience préalable n'est requise. JavaScript Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Application partielle » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon JavaScript Academy ?
Oui. Chaque leçon JavaScript Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Application partielle
- Currification des fonctions
- Composition de fonctions
- Construire pipe et compose