Читаю David Flanagan.
Перечитывал 2-3 раза разделы Выражения и Инструкции, но так и не дошло в чём собственно принципиальная разница.
Итак, простейшие выражения:
1.7
"Javascript is fun"
true
{x:2, y:2}
[2,3,5,7]
function(x){return x*x}
Далее сказано, что если смешать выражения и операторы, то получаются выражения.
Это выражения:
w = x + y + z;
q=a?b:c?d:e?f:g;
И всё бы ничего, но дальше следует глава инструкции.
1. Инструкция-выражение
i *=3;
Ну эта конструкция я так понимаю одновременно и инструкция и выражение.
Правильно понимаю? Соответственно примеры выше также являются выражениями?
2. Составные-инструкции
Следующие строки рассматриваются как одна инструкция.
{
x=Math.PI;
cx=Math.cos(x);
alert("cos(" + x + ") = " + cx);
}
Вопрос: может ли код выше рассматриваться как одно выражение?
3. Инструкции if, switch ... я так понимаю это уже чистой воды инструкции и никак не выражения. Они работают с выражениями. Правильно понимаю?
В общем и целом хочу уловить грань между двумя понятиями. Где заканчивается одно и начинается другое?
Любое выражение есть инструкция?
Благодарю за внимание