Searching for appropriate answer proved difficult because of the existence of many other problems related to my keywords, so I\'ll ask this here.
As we know, functio
"necromancing" here, but I think every great question needs simple answers:
Yes and Yes*
By attaching the properties to the function you clean up the scope, improve readability and add logical cohesion. An added benefit is that you document the relationship between the function and the variables. I think that's a superior design, much better than adding variables on the scope

Created some fun examples here and here. HERE AND HERE
* I think it's worth noting that you probably won't see this very often. most developers probably don't realize it's possible. Some people are crazy about every drop of performance... "JavaScript engines optimize based on the 'shape' of an object'..." blah blah blah... ut I think you can follow the rule you have for Objects and you'll do fine.