Cet article partagera avec vous 10 façons d'utiliser l'opérateur d'expansion de propagation javascript. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.
Recommandations associées : "Tutoriel vidéo javascript"
Nous pouvons utiliser l'opérateur spread pour copier Array, mais notez qu'il s'agit d'unecopie superficielle.
const arr1 = [1,2,3]; const arr2 = [...arr1]; console.log(arr2); // [ 1, 2, 3 ]
De cette façon, nous pouvons copier un tableau de base, notez que cela ne fonctionne pas avec des tableaux multi-niveaux ou des tableaux avec des dates ou des fonctions.
Supposons que nous ayons deux tableaux que nous souhaitons fusionner en un seul. Au début, nous pouvions utiliser la méthodeconcat
, mais maintenant nous pouvons utiliser l'opérateur spread :
const arr1 = [1,2,3]; const arr2 = [4,5,6]; const arr3 = [...arr1, ...arr2]; console.log(arr3); // [ 1, 2, 3, 4, 5, 6 ]
Nous pouvons également utiliser différents arrangements pour indiquer lequel doit venir en premier.
const arr3 = [...arr2, ...arr1]; console.log(arr3); [4, 5, 6, 1, 2, 3];
De plus, l'opérateur d'expansion convient également pour fusionner plusieurs tableaux :
const output = [...arr1, ...arr2, ...arr3, ...arr4];
let arr1 = ['this', 'is', 'an']; arr1 = [...arr1, 'array']; console.log(arr1); // [ 'this', 'is', 'an', 'array' ]
Hypothèse Vous avez un objet deuser
, mais il lui manque une propriétéage
.
const user = { firstname: 'Chris', lastname: 'Bongers' };
Pour ajouteruser
à cetage
objet, nous pouvons à nouveau utiliser l'opérateur spread.
const output = {...user, age: 31};
Supposons que nous ayons un tableau de nombres et que nous voulions obtenir le maximum, le minimum ou la somme de ces nombres.
const arr1 = [1, -1, 0, 5, 3];
Pour obtenir la valeur minimale, on peut utiliser l'opérateur spread et la méthodeMath.min
.
const arr1 = [1, -1, 0, 5, 3]; const min = Math.min(...arr1); console.log(min); // -1
De même, pour obtenir la valeur maximale, vous pouvez faire ceci :
const arr1 = [1, -1, 0, 5, 3]; const max = Math.max(...arr1); console.log(max); // 5
Comme vous pouvez le voir, la valeur maximale est5
, et si on supprime5
, ce sera reviens3
.
Vous vous demandez peut-être, que se passe-t-il si nous n'utilisons pas l'opérateur de propagation ?
const arr1 = [1, -1, 0, 5, 3]; const max = Math.max(arr1); console.log(max); // NaN
Cela renvoieNaNcar JavaScript ne sait pas quelle est la valeur maximale du tableau.
Supposons que nous ayons une fonction avec trois paramètres.
const myFunc(x1, x2, x3) => { console.log(x1); console.log(x2); console.log(x3); }
Nous pouvons appeler cette fonction comme suit :
myFunc(1, 2, 3);
Mais que se passe-t-il si nous voulons passer un tableau.
const arr1 = [1, 2, 3];
Nous pouvons utiliser l'opérateur spread pour étendre ce tableau dans notre fonction.
myFunc(...arr1); // 1 // 2 // 3
Ici, nous divisons le tableau en trois paramètres distincts et les transmettons à la fonction.
const myFunc = (x1, x2, x3) => { console.log(x1); console.log(x2); console.log(x3); }; const arr1 = [1, 2, 3]; myFunc(...arr1); // 1 // 2 // 3
Supposons que nous ayons une fonction qui accepte des arguments infinis comme suit :
const myFunc = (...args) => { console.log(args); };
Si nous appelons maintenant cela avec plusieurs Pour la fonction de paramètres, vous verrez la situation suivante :
myFunc(1, 'a', new Date());
renvoie :
[ 1, 'a', Date { __proto__: Date {} } ]
Ensuite, nous pouvons parcourir dynamiquement les paramètres.
Supposons que nous utilisions l'opérateur spread pour obtenir tous lesp
sur la page :
const el = [...document.querySelectorAll('p')]; console.log(el); // (3) [p, p, p]
Ici, vous pouvez voir ce que nous obtenons du dom Got 3p
.
Nous pouvons désormais parcourir facilement ces éléments puisqu'il s'agit de tableaux.
const el = [...document.querySelectorAll('p')]; el.forEach(item => { console.log(item); }); // // //
Supposons que nous ayons un objetuser
:
const user = { firstname: 'Chris', lastname: 'Bongers', age: 31 };
Maintenant, nous pouvons le déconstruire en variables individuelles à l'aide de l'opérateur de propagation.
const {firstname, ...rest} = user; console.log(firstname); console.log(rest); // 'Chris' // { lastname: 'Bongers', age: 31 }
Ici, on déstructure l'objetuser
et on déstructurefirstname
en une variablefirstname
et le reste de l'objet en une variablerest
.
Le dernier cas d'utilisation de l'opérateur d'expansion consiste à diviser une chaîne en mots individuels.
Supposons que nous ayons la chaîne suivante :
const str = 'Hello';
Ensuite, si nous utilisons l'opérateur spread sur cette chaîne, nous obtiendrons un tableau de lettres.
const str = 'Hello'; const arr = [...str]; console.log(arr); // [ 'H', 'e', 'l', 'l', 'o' ]
Adresse originale : https://dev.to/dailydevtips1/10-ways-to-use-the-spread-operator-in-javascript-1imb
Auteur : Chris Bongers
Adresse de traduction : https://segmentfault.com/a/1190000038998504
Pour plus de connaissances liées à la programmation, veuillez visiter :Enseignement de la programmation! !
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!