Задать вопрос

Откуда берется значение в переменной match?

Всем привет. Есть код из книги:
let stock = "1 lemon, 2 cabbages, and 101 eggs";

function minusOne(match, amount, unit) {
    debugger
    amount = Number(amount) - 1;
    if (amount == 1) { // only one left, remove the 's'
        unit = unit.slice(0, unit.length - 1);
    } else if (amount == 0) {
        amount = "no";
    }
    return amount + " " + unit;
}
console.log(stock.replace(/(\d+) (\w+)/g, minusOne));


При первой самой итерации в переменную match попадает: "1 lemon", amount = 1 , unit = lemon. Это (\d+) соответствует = amount, (\w+) = unit, но почему в match пропадает только часть с лемоном, а не вся строка пока не понял. Подскажите почему так?? Согласен наверное что-то элементарное, но вот сходу не сообразить. СПАСИБО
  • Вопрос задан
  • 58 просмотров
Подписаться 1 Простой 4 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 12:39
1000 руб./за проект
18 дек. 2024, в 12:37
10000 руб./за проект
18 дек. 2024, в 12:22
5000 руб./за проект