Я новичок в кодировании и не могу понять, почему мой код не работает.У кого-нибудь есть предложения, как это исправить?
Мне задают вопрос:
This function takes an array of dog objects and returns an array of the names of all the pugs.
E.g. [
{name: 'Beatrice', breed: 'Lurcher'},
{name: 'Max', breed: 'Pug'},
{name: 'Poppy', breed: 'Pug'}
]
will return ['Max', 'Poppy']
Это код, который я написал;
function getPugNames(dogs) {
let pugs = []
let reg = /(pug)/g
for (let i = 0; i < dogs.length; i ++) {
if(reg.test(dogs[i].bread)) {
pugs.push[i].name
}
} return pugs
}
Мой код будет запущен против этого;
describe("getPugNames", () => {
it("returns [] when passed []", () => {
expect(getPugNames([])).to.eql([]);
});
it("returns an array of pug names when passed an array of dog objects", () => {
const dogs = [
{ name: "Beatrice", breed: "Lurcher" },
{ name: "Max", breed: "Pug" },
{ name: "Poppy", breed: "Pug" }
];
expect(getPugNames(dogs)).to.eql(["Max", "Poppy"]);
const dogs2 = [
{ name: "Steven", breed: "Lurcher" },
{ name: "Daphne", breed: "Pug" },
{ name: "Sandy", breed: "Labrador" },
{ name: "Mike", breed: "Pug" },
{ name: "Spike", breed: "Pug" }
];
expect(getPugNames(dogs2)).to.eql(["Daphne", "Mike", "Spike"]);
const dogs3 = [
{ name: "Kevin", breed: "Labrador" },
{ name: "Patch", breed: "Rottweiler" },
{ name: "Miles", breed: "Lurcher" },
{ name: "Sandy", breed: "Pug" },
{ name: "Spot", breed: "Pug" },
{ name: "Josephine", breed: "Terrier" },
{ name: "Eric", breed: "Pug" }
];
expect(getPugNames(dogs3)).to.eql(["Sandy", "Spot", "Eric"]);
});
});
Это ошибка, которую мне дают;
![enter image description here](https://i.stack.imgur.com/MFBDK.png)