Javascript: passando uma variável não definida para uma função

Tenho algumas chamadas para o AJAX, onde retorno um objeto JSON como resposta. Este objeto JSON sempre tem a mesma estrutura. No entanto, às vezes, onde os scripts PHP falham, alguns dos objetos da estrutura JSON não são definidos ou mesmo inexistentes.

Isso também acontece com algumas variáveis "globais" que estão presentes em uma página e eu uso em alguns arquivos JS, mas depois vou para outra página onde eu uso esses arquivos JS e a variável nem é gravada.

Então, eu pensei em criar uma funçãois_defined() para o qual eu poderia perguntar se uma variável está definida ou não. A função é a seguinte:

function is_defined(ob, can_empty){
    if(can_empty === undefined || can_empty == '') can_empty = false

    return ob !== undefined && ob !== null && (ob !== '' || can_empty)
}

Portanto, se a variável passada forNULL ouundefinedou está vazio (e não pode estar vazio), voltofalse.

Meu problema surge quando a variável nem é escrita, pois não posso transmiti-la à função porque umUncaught ReferenceError: obj is not defined error é levantado.

Então, minha pergunta é seExiste alguma maneira de criar uma função para verificar se existe uma variável e édefiniram, como eu gostaria de centralizar todas essas verificações em uma função e não escreverobj !== undefined || obj !== null de vez em quando no meu código.

Eu pensei que com um operador Not duplo (!!!obj) seria convertido para false, mas enfrento o mesmo problema se a variável não for gravada.

EDITAR: Assim como uma declaração, o problema aqui é poder fazer verificações de variáveis não declaradas e indefinidas dentro de uma função, para que eu possa passar uma variável para a função sem precisar verificá-la antes de chamá-la se a variável for declarada ou não.

Obrigado a todos pelo seu tempo e respostas!

Atenciosamente!

questionAnswers(3)

yourAnswerToTheQuestion