Ниже приведен только теоретический вопрос JavaScript. Мне интересно, может ли следующее преобразование в один оператор:
if(!window.foo){
window.foo = [];
}
window.foo.push('bar');
каждый, вероятно, ранее писал этот код, но может ли он быть выполнен в одной строке?
Сначала я подумал, что что-то вроде этого будет работать:
(window.foo || window.foo = []).push('bar');
но это не работает из-за недопустимого назначения. Затем я попытался связать что-то с нажатием, но это не работает, потому что push не возвращает массив.
Любые мысли о том, можно ли это сделать в простом JavaScript?
(результат должен быть таким, что window.foo = ['bar']
)