Maison > Problème commun > le corps du texte

Quelles sont les nouvelles fonctionnalités d'es6

coldplay.xixi
Libérer: 2023-01-13 00:32:58
original
106077 Les gens l'ont consulté

Nouvelles fonctionnalités d'ES6 : 1. Ajouter des attributs aux objets ; 2. Fusionner des objets ; 3. Supprimer les attributs des objets ; 5. Ajuster la position des attributs d'objet ; . Renommez les propriétés de l'objet ; 8. Propriétés conditionnelles.

Quelles sont les nouvelles fonctionnalités d'es6

L'environnement d'exploitation de cet article : système Windows 7, ECMAScript version 6.0, ordinateur Dell G3.

Nouvelles fonctionnalités d'ES6 :

1. Ajouter des attributs à l'objet

Cloner l'objet, et en même temps. (peu profond) cloner l'objet Ajoutez des attributs supplémentaires, comme indiqué dans le code suivant :

const user = { id: 10, name: 'Tom'}const userWithPass = { ...user, password: 'Password!' }user //=> { id: 10, name: 'Tom' }userWithPass //=> { id: 10, name: 'Tom', password: 'Password!' }
Copier après la connexion

Dans cet exemple, l'utilisateur est cloné dans userWithPass et l'attribut password est ajouté à l'objet userWithPass. Le code est simple et. efficace.

2. Fusionner des objets

Nous donnons un exemple pour illustrer comment faire fonctionner

const part1 = { id: 10, name: 'Howard Moon' }const part2 = { id: 11, password: 'Password!' }const user1 = { ...part1, ...part2 }//=> { id: 10, name: 'Howard Moon', password: 'Password!' }
Copier après la connexion

Dans cet exemple, nous fusionnons part1 et part2 dans un objet user1 , vous pouvez également fusionner des objets des manières suivantes

const partial = { id: 100, name: 'Howard Moon' }const user = { ...partial, id: 100, password: 'Password!' }user //=> { id: 100, name: 'Howard Moon', password: 'Password!' }
Copier après la connexion

3. Supprimer les attributs de l'objet

Vous pouvez utiliser la destruction en conjonction avec l'opérateur REST pour supprimer les attributs .

onst noPassword = ({ password, ...rest }) => restconst user = { id: 100, name: 'Howard Moon', password: 'Password!'}noPassword(user) //=> { id: 100, name: 'Howard moon' }
Copier après la connexion

4. Supprimer dynamiquement les attributs

Vous pouvez utiliser le nom de l'attribut de l'objet, puis RemoveProperty transmet le nom de l'attribut pour supprimer l'attribut

const user1 = { id: 100, name: 'Howard Moon', password: 'Password!'}const removeProperty = prop => ({ [prop]: _, ...rest }) => rest// ---- ------//  /// dynamic destructuringconst removePassword = removeProperty('password')const removeId = removeProperty('id')removePassword(user1) //=> { id: 100, name: 'Howard Moon' }removeId(user1) //=> { name: 'Howard Moon', password: 'Password!' }
Copier après la connexion

5. Ajustez la position des attributs de l'objet

Parfois, les attributs ne rentrent pas dans l'ordre dont nous avons besoin. En utilisant quelques astuces, nous pouvons pousser les attributs en haut de la liste, ou les déplacer vers le bas, par exemple :

const user3 = { password: 'Password!', name: 'Naboo', id: 300}const organize = object => ({ id: undefined, ...object })// -------------// /// move id to the first propertyorganize(user3)//=> { id: 300, password: 'Password!', name: 'Naboo' }
Copier après la connexion

Dans cet exemple, l'identifiant a été déplacé vers la première position. l'attribut de mot de passe. jusqu'au dernier bit

const user3 = { password: 'Password!', name: 'Naboo', id: 300}const organize = ({ password, ...object }) => ({ ...object, password })// --------// /// move password to last propertyorganize(user3)//=> { name: 'Naboo', id: 300, password: 'Password!' }
Copier après la connexion

6. Attribut par défaut

const user2 = { id: 200, name: 'Vince Noir'}const user4 = { id: 400, name: 'Bollo', quotes: ["I've got a bad feeling about this..."]}const setDefaults = ({ quotes = [], ...object}) => ({ ...object, quotes })setDefaults(user2)//=> { id: 200, name: 'Vince Noir', quotes: [] }setDefaults(user4)//=> {//=> id: 400,//=> name: 'Bollo',//=> quotes: ["I've got a bad feeling about this..."]//=> }
Copier après la connexion

Il convient de noter que la valeur de l'attribut par défaut ne sera définie que si elle n'est pas contenue. dans l'objet d'origine. À partir de cela, à en juger par les résultats de l'exemple, nous savons comment définir la valeur par défaut. Ou vous devrez peut-être aussi écrire comme ceci

const setDefaults = ({ ...object}) => ({ quotes: [], ...object })
Copier après la connexion

7. Renommez les attributs de l'objet

Dans certains scénarios, par exemple, nous devrons peut-être changer la casse du les attributs de l'objet, alors nous pouvons renommer

const renamed = ({ ID, ...object }) => ({ id: ID, ...object })const user = {ID: 500,name: "Bob Fossil"}renamed(user) //=> { id: 500, name: 'Bob Fossil' }//将大写ID改成了小写的
Copier après la connexion

de cette façon 8. Attribut conditionnel

C'est parfois très pratique à en juger par le nom, cela montre que le. l'objet est contrôlé par des conditions. Propriétés de

const user = { id: 100, name: 'Howard Moon' }const password = 'Password!'const userWithPassword = { ...user, id: 100, ...(password && { password })}userWithPassword //=> { id: 100, name: 'Howard Moon', password: 'Password!' }
Copier après la connexion

Recommandations vidéo associées : Tutoriel vidéo PHP

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!