You confound functions with objects. A function can be used to create an object (or can be handled as an object), but an object is not a function. An object have members. A function has no literal members, or better say, the declarations, expressions, variables, etc defined inside a function are not members of that function , even if treated as an object.
If you want to access literally the members of an object, either you should write literally that object
var fnc = {
a:10,
b:10
}
fnc.c = 4;
Or you may use another function as a constructor
var Constructor = function(a,b,c){
this.a=a;
this.b=b;
this.c=c;
}
fnc = new Constructor(10,10,4);
A function is, in fact an object generated by the Function() native constructor.
And something else. In you code you have used a function expression:
var fnc = function(){
}
That does nothing but to assign an anonymous function to a variable.
A function can be invoked from inside, if this is what you are looking for, using the combination of the function's properties arguments and callee
var fnc = function(){
alert(arguments.callee.c);
}
fnc.c=4;
fnc();
More about functions (and Function) scope:
https://developer.mozilla.org/en/JavaScript/Reference/Functions_and_function_scope