Skip to main content

Olá pessoal, tudo bom?


Tenho um problema relacionado a função de execução de script:


Tenho um script para parsear um possível JSON que pode vir como input dentro do bloco de exceções, porém nem sempre esse input vai ser um JSON, afinal é o bloco de exceções, por isso eu trato o script usando o bom e velho Try Catch, porém aconteceu uma situação onde o usuário enviou apenas um ponto (.), por algum motivo o script não caiu no catch, simulando em qualquer outro lugar o script deveria funcionar, mas dentro do Blip não vai.


function run(inputTemp) {
try{
inputTemp = JSON.parse(inputTemp)
if(inputTemp.hasOwnProperty('input')){
return inputTemp.input
}
return false
}catch(e){
return false
}
}

Erro apresentado no debug:


Alguém poderia me dar uma luz ou sugestão de outro scritp? 🤔


Esse emoji me representa.


Conseguiu uma solução @Adriano_tsi ?


Então… pior que não, é um erro bastante incomodum mas acontece, queria que houvesse outra forma de solucionar que não seja habitiar “continuar com erro”, já que na prática o script deveria retornar false em caso de erro né :watching:


Sim :watching:


Vou ver se consigo entender esse comportamento. Mas fico feliz que seja uma coisa pontual


Como é algo passável pelo usuário, talvez dê pra validar via regex ou algo do tipo, não? Pra ele não mandar só o ponto, por exemplo.



Verdade 🤔, vou fazer uns testes pra checar se outros caracteres especiais ou algum outro tipo de input causa o mesmo erro, por enquanto só vi acontecer com o ponto, e se eu não me engano teve um caso que aconteceu com interrogação também, bem bizarro.


Comente