Сообщение от Aetae
|
Давно хочу либу сделать для работы с аргументами функции в любых порядках и направлениях, да руки не доходят.
|
Я тоже пытался. Но отказался, так как часто получается слишком тяжеловесно.
Простой пример - функция создания элемента
С вариантами использования
create (tag, options [, children [, parent]])
create (tag [, children | null [, parent]])
где
tag - string
children - Node | Array | string
parent - Element
options - object (но не Array | Node)
Слишком много разных проверок, что бы просто создать элемент Проще зафиксировать параметры и проверять на null или undefined.
Универсализм плохо сочетается с эффективностью.