Мутирование переменных внутри функции - это злоупотребление? - PullRequest
0 голосов
/ 02 июля 2019

Я хочу знать, что такое лучшие практики, прежде чем я пойду к своим коллегам для проверки кода.

Я знаю, что работает следующий код.Мой вопрос заключается в том, является ли использование JavaScript таким способом, как правило, приемлемым в JavaScript, или здесь есть что-то проблематичное, что я упускаю?Спасибо

РЕДАКТИРОВАТЬ: обновил фрагмент, чтобы более четко показать, что я пытаюсь достичь (более чистый, более читаемый код)

// All this is happening inside a function. Declared vars are not global.

var x, y, z;        // lots of variables to declare (to use in closures)
setupVars(true);    // lots of variables to setup
useVars();          // lots of variables to use

function setupVars(condition) {
    if(condition){
        x = 1;
        y = 2;
        z = 3;
    } else {
        x = 4;
        y = 5;
        z = 6;
    }
};

function useVars(){
    console.log(x);
    console.log(y);
    console.log(z);
}

1 Ответ

0 голосов
/ 02 июля 2019

Использование переменных с такими же именами, что и глобальные, внутри функции не является хорошей практикой кодирования. В приведенном выше коде вы должны рассмотреть переименование х внутри функции.

В противном случае, если функция такая же простая, как показанная выше, вы можете просто сделать что-то вроде этого

function modify(value){
    return modified_value;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...