Maison >interface Web >js tutoriel >Écrire une fonction de test tout en apprenant le javascript

Écrire une fonction de test tout en apprenant le javascript

王林
王林original
2024-07-27 16:30:331133parcourir

Write a test function while learning javascript

Des objets partout

Eh bien, vous avez probablement déjà entendu parler des objets en JavaScript et de leur importance pour comprendre le langage.
Les objets rendent JS extrêmement lisible et utile grâce à son modèle "key": "valeur". Mais ce que je veux souligner, c'est que la section "valeur" accepte non seulement une simple chaîne, mais plutôt un autre objet, qui à son tour peut être un autre objet et ainsi de suite. Par exemple :

const character = {
      name:"Arthur Morgan",
      age:24,
      face: {
      hairSize:5,
      eyesColor: "blue",
      }
}

Cet extrait montre que le visage est à la fois un objet et un personnage. C'est parfaitement bien de le faire, et de nombreuses API complexes traitent des données comme celles-là, les regroupant encore et encore lorsque cela est important.

Mais le véritable pouvoir des objets repose sur les fonctions, et ce problème du Leet Code le traite, tout en nous donnant l'essentiel du fonctionnement des bibliothèques de tests sous le capot. Fondamentalement, vous avez besoin d'une fonction qui valide si une valeur est égale à celle attendue ou non : toBe() et notToBe(). Pour ce faire, nous pouvons renvoyer un objet avec ces fonctions. D'ailleurs, l'utilisation des fonctions fléchées le rend plus joli et direct.

Voici la réponse.

function expect(val) {
  function toBe(anotherValue) {
    if (val === anotherValue) {
      return true;
    }

    throw Error("Not Equal");
  }

  function notToBe(anotherValue) {
    if (val !== anotherValue) {
      return true;
    }

    throw Error("Equal");
  }

  return {
    toBe: (anotherValue) => toBe(anotherValue),
    notToBe: (anotherValue) => notToBe(anotherValue),
  };
}

On peut rapidement le voir fonctionner à l'aide d'un autre objet : la fameuse console et son journal de fonctions.

console.log(expect(5).toBe(null)); // give us an error "Not Equal", because 5 is not null

Notez que le fait de retourner un objet nous donne la liberté d'utiliser expect() puis, juste après, .toBe(). C'est parce que nous renvoyons un objet et accédons immédiatement à la propriété toBe, qui est une fonction.

Ce problème de code Leet est un excellent moyen de voir comment les objets et les fonctions peuvent fonctionner ensemble et créer des éléments géniaux en JavaScript. J'espère que vous avez aimé :)

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