[webkit-dev] JSObjectCallAsFunctionCallback question
Darin Adler
darin at apple.com
Thu May 14 19:29:45 PDT 2009
On May 14, 2009, at 7:03 PM, Xiong wrote:
> 1 what is the purpose of the "JSObjectRef function" variable? In
> my case, we never use.
It’s fine to not use this if you don’t need to. In JavaScript,
functions are objects. Like other objects they can have properties.
This argument is passed to your C implementation so that it can get
access to properties of the function object if it has some reason to.
In many cases there is no need to do this.
> 2 In this function, i want to get the propertyName of the method,
> in this case, we need "getValues", can be implemented ?
No, there's no way to do that, for a good architectural reason.
A JavaScript function is a first class object. Using JSObjectMake will
create an object with a prototype that has functions stored in its
properties, but there’s nothing to prevent the JavaScript program from
taking that function and storing it somewhere else, in a property with
another name. When the function is called, it’s just an object, and
there’s no way to go back in time and find out where that object came
from.
Consider the similar situation of a data property. When you get the
length of an array, it's a number 1, not a number 1 that knows it came
from a property named "length".
-- Darin
More information about the webkit-dev
mailing list