Как проверить, чтобы два параметра были числами с шуткой

#javascript #jestjs

Вопрос:

У меня есть функция, которая получает два числа (целое число), возвращая массив с первыми (числами), кратными (значению), как countBy(значение, число).

напр.

countBy(1, 10) returns [1, 2, 3, 4, 5, 5, 7, 8, 9, 10]

countyBy(2, 5) returns [2, 4, 6, 8, 10]

Итак, какой сопоставитель следует использовать для проверки того, получает ли функция только числа (целое число) ? Я провел много тестов, но так и не нашел решения.

 it ('Verify if are received and returned only numbers', () =gt; {  expect(typeof countBy(2, 5)).toBe('number');  });  

Кто-нибудь может дать мне прикурить?

Комментарии:

1. Это не имеет смысла — функция не контролирует то, что она получает , это зависит от вызывающего абонента.

Ответ №1:

попробуйте это

 const targetArray = [1, 2, 3, 4, 5, 5, 7, 8, 9, 10];  test("Verify if are received and returned only numbers", () =gt; {  targetArray.forEach((target) =gt; {  expect(typeof target).toBe("number");  }); });  

Комментарии:

1. На самом деле не прошел! Когда я ввожу строку в функцию, она не возвращает ошибку, как должно быть.

2. @KelsonBatista нужно перейти к полному массиву, а затем проверить каждый тип элемента. Я изменил код. Я проверяю свой компьютер. теперь это должно сработать.

3. Теперь это работает @MohammadAliRony! Большое вам спасибо!