W wielu językach function_name(arg1, arg2, ...)
do wywołania funkcji służy składnia . Kiedy chcemy wywołać funkcję bez żadnych argumentów, musimy to zrobić function_name()
.
Dziwne wydaje mi się, że kompilator lub interpreter skryptów wymagałby ()
skutecznego wykrycia go jako wywołania funkcji. Jeśli wiadomo, że zmienna jest wywoływalna, dlaczego nie function_name;
wystarczy?
Z drugiej strony w niektórych językach możemy zrobić: function_name 'test';
a nawet function_name 'first' 'second';
wywołać funkcję lub polecenie.
Myślę, że nawiasy byłyby lepsze, gdyby były potrzebne tylko do określenia kolejności priorytetów, a w innych miejscach byłyby opcjonalne. Na przykład wykonywanie if expression == true function_name;
powinno być tak samo ważne jak if (expression == true) function_name();
.
Moim zdaniem najbardziej irytujące jest to, że 'SOME_STRING'.toLowerCase()
funkcja prototypowa wyraźnie nie potrzebuje żadnych argumentów. Dlaczego projektanci zdecydowali się na prostsze 'SOME_STRING'.lower
?
Oświadczenie: Nie zrozum mnie źle, uwielbiam składnię podobną do C! ;) Po prostu pytam, czy mogłoby być lepiej. Czy wymaganie ()
ma jakieś zalety wydajnościowe, czy też ułatwia zrozumienie kodu? Jestem naprawdę ciekawy, jaki jest dokładnie powód.
()
, ale tym, co wyróżnia się w twoim poście, jest if (expression == true)
stwierdzenie. Martwisz się o to, co zbędne ()
, a potem użyj zbędnego == true
:)