0
votes

Impossible de créer un tableau de manière dynamique à l'aide de

Dans le code ci-dessous lorsque je console les valeurs de Calculatetites () , je reçois l'erreur suivante

non capturé TypeError: impossible de définir la propriété '0' de indéfini xxx

Je suis incapable de comprendre pourquoi je reçois cette erreur parce que, selon moi, je fais la bonne chose. S'il vous plaît aider.


2 commentaires

Ceci à l'intérieur de votre .foreseach ne fait référence à votre objet. Vous pouvez utiliser une fonction de flèche à la place


Est-ce que cela répond à votre question? Comment accéder au bon `this` à l'intérieur d'un rappel?


4 Réponses :


0
votes

Vous pouvez obtenir votre résultat en faisant cela. Utilisez-le en fonction de vos besoins.

var num = 10,
  dynar = [...Array(num)].map((_,i) => ++i+"");
console.log(dynar);


0 commentaires

0
votes

Remplacer .foForeach code> Fonction de rappel avec => code> ( arrow ) fonction

Essayez ceci: p>

p>

  let tipCal = {
    bills: [124, 48, 268, 180, 42],
    calculateTips: function () {
      this.tips = [];
      this.finalValue = [];
      (this.bills).forEach((item, index)=> {
        if (item < 50) {
          this.tips[index] = (item * .2);
        } else if (item >= 50 && item < 200) {
          this.tips[index] = (item * .15);
        } else {
          this.tips[index] = (item * .1);
        }
      });
      return this.tips;

    }
  }
  console.log(tipCal.calculateTips())


0 commentaires


0
votes

Je pense que cela parce que la fonction à l'intérieur d'une fonction change le mot clé .

Le .foreseach (fonction (élément, index) { live inside Calculatetites: fonction () {. Essayez d'utiliser la fonction de flèche, il sera donc .foreseach ((élément, index) => {. .

La fonction de flèche ne changera pas le mot clé .

Donc, il retournera ..

(5) [18.59999999999999998, 9.600000000000001, 26.8, 27, 8.4]


0 commentaires