Сенсация! Undefined не перехватывается через watch. В javascript существует возможность отслеживать изменение значения переменной через watch, observe, listen. Всё это обернуто внутри реактивного фреймворка vue через секцию watch. Но как оказалось есть особенности:
Если вы хотите перехватывать изменение переменной в пустышку - используйте a=null
Если не хотите перехватывать изменение в пустое - значение - используйте a=undefined, либо используйте a=null и явно указывайте проверку внутри метода watch
Соблюдайте принцип: Явное лучше неявного
И не используйте undefined
Таким образом null победил со счетом 1:0