2016-10-20 2 views
0

Мне было дано упражнение, но я не полностью понимаю функцию утверждения, которая была предоставлена ​​мне. Так проверить это ..Функция подтверждения в JavaScript

function assert(input, expectedResult, descriptionOfCorrectResult) { 
    if (!expectedResult) { 
     console.log(descriptionOfCorrectResult); 
    } else { 
     console.log('test passed'); 
    } 
}; 

Так ! дает логическое значение. Таким образом, if (!expectedResult) должен предоставить нам true или false. Давайте используем простую функцию, например:

function square(x) { 
    return x * x; 
}; 

Как использовать функцию assert на этой простой квадратной функции? Это можно сделать?

+0

'assert (null, square (2) === 4," 2 squared должно быть четыре "). Я не знаю, что означает' input', он нигде не используется. –

+0

Эта функция assert делает нет смысла вообще. – Quentin

ответ

0

Предположим, вы хотите проверить square(4). Первый параметр * assert содержит введенный вами вход square, второй - ваш фактический тест, а третий - когда вы объясняете, что делаете. Итак, у вас есть:

assert(4, square(4) == 16, "The result of square(4) should be its square, 16."); 

Если он работает он записывает "test passed"; в противном случае вы получите сообщение об ошибке, "The result of square(4) should be its square, 16.".

Это как его использовать.

* На самом деле, поскольку assert не использует первый параметр, то, что вы там положили, действительно не имеет значения; выход журнала будет таким же, если вы прошли в адресе Gettysburg.

У меня есть еще одно наблюдение: если утверждение не выполнено, в журнал не входит вывод square, он сообщает только, что должен быть выход. Вы, наверное, хотите знать и то, и другое. Я бы хотел изменить эту функцию, если бы я был вами.

Смежные вопросы