Em muitos idiomas, a sintaxe function_name(arg1, arg2, ...)
é usada para chamar uma função. Quando queremos chamar a função sem argumentos, devemos fazê-lo function_name()
.
Acho estranho que um compilador ou intérprete de script exigiria ()
detectá-lo com êxito como uma chamada de função. Se uma variável é conhecida como chamadora, por que não function_name;
seria suficiente?
Por outro lado, em alguns idiomas, podemos fazer: function_name 'test';
ou mesmo function_name 'first' 'second';
chamar uma função ou comando.
Acho que os parênteses teriam sido melhores se fossem necessários apenas para declarar a ordem de prioridade e, em outros lugares, eram opcionais. Por exemplo, fazer if expression == true function_name;
deve ser tão válido quanto if (expression == true) function_name();
.
A coisa mais irritante na minha opinião é fazer 'SOME_STRING'.toLowerCase()
quando claramente nenhum argumento é necessário para a função prototype. Por que os designers decidiram contra o mais simples 'SOME_STRING'.lower
?
Isenção de responsabilidade: não me interpretem mal, eu amo a sintaxe do tipo C! ;) Só estou perguntando se poderia ser melhor. A exigência ()
tem vantagens de desempenho ou facilita a compreensão do código? Estou realmente curioso para saber exatamente qual é o motivo.
()
, mas o que se destaca em seu post é a if (expression == true)
afirmação. Você se preocupa com supérfluos ()
's, no entanto, em seguida, usar um supérfluo == true
:)