Они так, как вы это закодировали, это не избыточно.Это связано с тем, что переданный в первый объект является измененным, поэтому все свойства в options
копируются в анонимный объект, который вы передаете в качестве первого параметра.Таким образом, вам нужно будет присвоить возвращаемое значение $.extend
чему-либо, чтобы иметь возможность фактически использовать его.Если бы вы сделали это наоборот:
$.extend(options, { ... });
Тогда назначение является избыточным.Также обратите внимание, что порядок передачи объектов важен.Делая это так, как вы это сделали, анонимный объект - это, по сути, «значения по умолчанию», и все, что в options
переопределит их.
Наконец, поскольку вы передаете результат в вызов setOptions
(который, я предполагаю, сохраняет значение где-то), вам также не требуется явное присваивание options
.Но это полностью зависит от того, что setOptions
делает и что вам нужно options
для дальнейшего ...