Size: a a a

JavaScript Noobs — сообщество новичков

2020 July 29

А

Алексей Котов... in JavaScript Noobs — сообщество новичков
Stas
ну в жсе можно твоим же подходом, только нужно будет перекрутить условие на isNaN
а, все. Спасибо)))
источник

А

Алексей Котов... in JavaScript Noobs — сообщество новичков
str.split('').filter(item => !isNaN(item))).join('')
источник

S

Stas in JavaScript Noobs — сообщество новичков
jk
Можно ещё проще?

function calculateGuests (string) {
 const match = string.match(/\d+/)

 if (match) {
   const number = Number(match[0])

   if (number > 0) {
     return number
   }
 }

 return 'not a number'
}
есть ли смысл в условии if (match)?
источник

Д

Дима in JavaScript Noobs — сообщество новичков
Может не найти цифры в строке
источник

Д

Дима in JavaScript Noobs — сообщество новичков
И тогда null
источник

S

Stas in JavaScript Noobs — сообщество новичков
значит есть
источник

y

yandexphp in JavaScript Noobs — сообщество новичков
jk
Можно ещё проще?

function calculateGuests (string) {
 const match = string.match(/\d+/)

 if (match) {
   const number = Number(match[0])

   if (number > 0) {
     return number
   }
 }

 return 'not a number'
}
ну можно и так только поправлю немного твой код

const getGuests = str => {
   const match = str.match(/\d+/g);
   const notNumber = 'not a number';

   if(match){
       return match.reduce((acc, x) => {
           const n = +x || 0;

           if(n > acc) {
               acc = n;
           }

           return acc;
       }, 0) || notNumber;
   }

   return notNumber;
}

console.log(
   getGuests('I think 5 guests') === 5,
   getGuests('Big company of 15 dudes') === 15,
   getGuests('5') === 5,
   getGuests('alone') === 'not a number',
   getGuests('0') === 'not a number'
);
источник

j

jk in JavaScript Noobs — сообщество новичков
Переслано от Denis
Подскажите как решить эту задачку плиз?


Вкратце, программисты еще не изменили тип поля "количество гостей" в форме бронирования и им все еще приходят строки Нас будет 4ро, Ну думаю где-то 3, Точно 2 человека, Большая компания из 15 людей. Менеджеры вынуждены обрабатывать такие запросы в ручном режиме. Сервис, конечно же, страдает.

Думаю, мы можем помочь им. Давай улучшим функцию calculateGuests так, чтобы она начала искать числа и в середине строки guestsInput? Если все-таки невозможно определить количество гостей, или это количество равно 0 - возвращай not a number.

Примеры:

calculateGuests('I think 5 guests') === 5
calculateGuests('Big company of 15 dudes') === 15
calculateGuests('5') === 5
calculateGuests('alone') === 'not a number'
calculateGuests('0') === 'not a number'
источник

j

jk in JavaScript Noobs — сообщество новичков
Напоминаю условия задачи.
источник

Д

Дима in JavaScript Noobs — сообщество новичков
U - uporolis
источник

y

yandexphp in JavaScript Noobs — сообщество новичков
😅not a number збс потом if(calc() === 'not a number')
источник

S

Stas in JavaScript Noobs — сообщество новичков
yandexphp
ну можно и так только поправлю немного твой код

const getGuests = str => {
   const match = str.match(/\d+/g);
   const notNumber = 'not a number';

   if(match){
       return match.reduce((acc, x) => {
           const n = +x || 0;

           if(n > acc) {
               acc = n;
           }

           return acc;
       }, 0) || notNumber;
   }

   return notNumber;
}

console.log(
   getGuests('I think 5 guests') === 5,
   getGuests('Big company of 15 dudes') === 15,
   getGuests('5') === 5,
   getGuests('alone') === 'not a number',
   getGuests('0') === 'not a number'
);
зачем так усложнять? есть какое-то отличие в работе от того, который ты поправил?
источник

y

yandexphp in JavaScript Noobs — сообщество новичков
jk
Можно ещё проще?

function calculateGuests (string) {
 const match = string.match(/\d+/)

 if (match) {
   const number = Number(match[0])

   if (number > 0) {
     return number
   }
 }

 return 'not a number'
}
calculateGuests('Нас будет примерно 5 либо 7 но всего человек должно быть 10')

= 5
источник

S

Stas in JavaScript Noobs — сообщество новичков
yandexphp
calculateGuests('Нас будет примерно 5 либо 7 но всего человек должно быть 10')

= 5
это новое условие?
источник

y

yandexphp in JavaScript Noobs — сообщество новичков
this is keys
источник

S

Stas in JavaScript Noobs — сообщество новичков
yandexphp
calculateGuests('Нас будет примерно 5 либо 7 но всего человек должно быть 10')

= 5
"нас будет 10, 2 не прийдут"
источник

y

yandexphp in JavaScript Noobs — сообщество новичков
Если он делает задание то ок пусть код выше но если что-то для продакшена то желаю ему рутины на баги
источник

S

Stas in JavaScript Noobs — сообщество новичков
yandexphp
Если он делает задание то ок пусть код выше но если что-то для продакшена то желаю ему рутины на баги
если это не тестовое, а должно работать, то тут всё на много сложнее)
источник

ei

export default - зло... in JavaScript Noobs — сообщество новичков
yandexphp
calculateGuests('Нас будет примерно 5 либо 7 но всего человек должно быть 10')

= 5
Ты чего, кукухой тронулся?
источник

y

yandexphp in JavaScript Noobs — сообщество новичков
export default - зло is the side effect
Ты чего, кукухой тронулся?
хз
источник