Maison  >  Article  >  interface Web  >  Littéraux d'objet améliorés

Littéraux d'objet améliorés

PHPz
PHPzoriginal
2024-08-24 11:03:18202parcourir

Enhanced Object Literals

  • ES6 introduced 3 ways to write object literals
  • First Way:
- ES6 Enhanced object literal syntax can take an external object like salary object and make it a property of the developer object as shown below:
const salary = {
  fixed: '$200k',
  variable: '$100k'
}

const developer = {
  // salary: salary      // Before ES6
  salary                 // ES6 way
}

developer; // { salary: { fixed: '$200k', variable: '$100k' } }

- If any change is made in salary object, same change needs to be made inside the developer object for salary object which is present as property of developer object.
  • Second way:
  • We don't need to create a property & then set it to function expression. We can write that directly without function keyword as shown below i.e ES6 Way.
const salary = {
  fixed: '$200k',
  variable: '$50k'
}

const developer = {
  salary,
  /* Before ES6
  greet: function(name){
    console.log(`Salary credited. Enjoy ${name}!`);
  }*/
  // ES6 Way
  greet(name){
    console.log(`Salary credited. Enjoy ${name}!`);
  }
}

developer.greet("Peter");
  • Third Way:
  • Property names can be computed also
const seasons = ['winter','summer','spring', 'monsoon','autumn'];

const fruits = {
  [seasons[0]]: 'apple',
  [seasons[1]]: 'mango',
  [[seasons.length]]: 'cherry'
}

fruits;   // { '5': 'cherry', winter: 'apple', summer: 'mango' }

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!

Déclaration:
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