В случае 2 круглые скобки не изменяют тот факт, что значение ссылки на функцию в левой части ()
получено из ссылки на свойство объекта. Таким образом, вызов функции происходит точно так же, как в случае 1, когда ссылка на объект связана с this
.
В случае 4, однако, оценка ||
в этих скобках приводит к тому, что эта связь будет потерял; остается только ссылка на функцию без какого-либо связанного объекта. Это потому, что logi c из ||
не заботится о том факте, что ссылка на функцию получена из поиска свойства объекта, поэтому ее результатом является просто ссылка на функцию "naked".
Что касается Ваши последующие вопросы, ни одно из утверждений не сформулировано правильно. Значение this
зависит от того, как вызывается функция, но это не имеет никакого отношения к тому, откуда появилась функция или как она была объявлена. Внутри функций со стрелками значение this
не является ссылкой на его лексический родительский элемент, оно совпадает со значением this
в лексическом родительском элементе.