Utiliser une fonction d'ordre supérieur pour filtrer un tableau JavaScript

Publié le 15/11/2019 • Mis à jour le 15/11/2019


English language detected! 🇬🇧

  We noticed that your browser is using English. Do you want to read this post in this language?

Read the english version 🇬🇧 Close

C'est un exemple de JavaScript moderne et de programmation fonctionnelle que vous vous devez de connaître afin de produire un code clair et concis. Dans ce cas, on filtre un tableau sur une des propriétés des objets qu'il contient. Puis, nous affichons les libellés de ceux-ci. Le but étant de ne faire ni de boucle ni d'écrire de fonctions additionnelles.


/**
 * J'utilise un module JavaScript afin d'isoler chaque snippet dans un fichier.
 * C'est en fait un mixin Vue.js. Utilisez le code appelé par la fonction mounted()
 * ou snippetXX().
 */
export default {
  methods: {
    snippet55 () {
      const todos = [
        { label: 'Call mum', type: 'todo', isUrgent: true },
        { label: 'Buy food', type: 'tobuy', isUrgent: false },
        { label: 'Write a new snippet', type: 'todo', isUrgent: true }
      ]
      console.log(todos)
      const isUrgent = todo => todo.isUrgent
      const urgents = todos.filter(isUrgent)
      console.log('Urgent todos are: ' + urgents.map(todo => todo.label).join(', ')) // That's it! 😁
    }
  },
  mounted () {
    if (this.isArticle(55)) {
      this.snippet55()
    }
  }
}

 Plus sur Stackoverflow  Plus sur le web  Snippet aléatoire