Как сказано в названии, я не могу понять, почему (true & & {}) дает мне {}, но обратное не то же самое.Почему (true && {}) оценивается как {}, но ({} && true) имеет значение true?
Редактировать: В качестве продолжения, поскольку я использую логический оператор, почему это выражение не дает мне логическое значение при оценке?
Операторы JavaScript '&&' и '||' не дают логических значений. Они отличаются от аналогичных операторов в Java и C и т. Д. Они возвращают значение одного или другого из их операндов. – Pointy