В js многие операторы не являются выражением, и как следствие их можно использовать только как statement.
Среди них var, let, const, return, throw (есть пропозал, так что в будущем может изменится), if, for, while и некоторые другие.
следовательно написать
x = delete y.z
можно, так как оператор delete - является выражением и возвращает true или false
а написать
x = var y
нельзя, так как var ничего не возвращает, даже undefined не вернет.
можно так:
var arrey = [];
var a = 1;
var b = 2;
arrey[0] = a;
arrey[1] = b;
но правильнее так:
var arrey = [];
var a = 1;
var b = 2;
arrey.push(a, b);
или так:
var a = 1;
var b = 2;
var arrey = [a, b];