NoMoney: преимущества:
1. при появлении нового поля, достаточно будет добавить его в объект defaults - меньше действий === меньше ошибок
2. если в дальнейшем понадобится валидация/трансформация для определенных полей, данный вариант легко расширить
3. ну и маленький бонус производительности, за счет того, что ключи получены заранее (на этапе запуска)
doctorcat: eval медленная деоптимизирующая конструкция, все замыкание содержащее eval не будет оптимизироваться никогда
Кроме того eval позволяет выполнить абсолютно любой код, что делает его небезопасным
Никита Ушкалов: v - аргумент функции, в него передается значение при вызове из onclick
насчет второй колонки - можно сделать переключатель состояния например по фокусу на поле
попробуйте разобраться с примером, который я добавил в ответ
mak_ufo: у монги довольно мощный язык запросов, уверен Вашу функцию можно выразить на нем
возможно смогу помочь, если распишите ближе к реальным данным