Let be more explicit.
In properties we have 3 versions: (prop1, prop2....), ([prop1, prop2, ...]), ({ prop1 ... }).
So need to check arguments.length === 1 and go from it.
Also prefer Array.isArray (instead of checking typeof object + instance of Array)