JavaScript: что я должен вернуть, чтобы отметить эту функцию как неверный ввод? - PullRequest
0 голосов
/ 09 июня 2018

Если пользователь вводит 1 в этом примере, я хочу, чтобы функция остановилась, поэтому я должен вернуть true , или NULL , или 1 , или 0 ... или это действительно имеет значение?

function foo() {
    // incorrect input
    if (bar === 1) {
        return true;
    }
    // correct input
    else {
        arr.push(bar);
    }
}

Я знаю, что в C возвращается 0 для программ с правильным вводом, но для программ с неправильным вводом они возвращают 1, 2, 3 ....
Не уверен, что протокол для JavaScript.

Ответы [ 2 ]

0 голосов
/ 09 июня 2018

Вы можете либо просто вернуться, либо, если он вложен в цикл, и вы хотите перейти к следующему элементу, вы также можете использовать «продолжить»;так что это не завершает ваш цикл

0 голосов
/ 09 июня 2018

Это зависит от контекста этой функции.Вы используете возвращаемое значение где-то еще?Если нет, вы можете просто использовать return, чтобы остановить выполнение функции:

if (bar === 1) {
    return;
}

А если вы используете возвращаемое значение где-то еще и хотите действовать в случае сбоя, вы можете просто вернуть false или что-нибудь изатем проверьте, существует ли это значение.

В обновленном контексте вы можете просто использовать следующий код, и он будет толкать массив, если true, и ничего не делать, если false

if (bar !== 1) {
    arr.push(bar);
}
...