この記事はまだ日本語に翻訳されていません。MDN の翻訳はボランティアによって行われています。是非 MDN に登録し、私たちの力になって下さい。

Create a new Function object from an existing JSFunction.


JSObject * JS_CloneFunctionObject(JSContext *cx, JSObject *funobj, JSObject *parent);
Name Type Description
cx JSContext * Pointer to a JS context from which to derive runtime information. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext.
funobj JSObject * The Function to clone.
parent JSObject * The new function's parent.


JS_CloneFunctionObject creates a new function object from funobj. The new object has the same code and argument list as funobj, but uses parent as its enclosing scope. This can be helpful if funobj is an extant function that you wish to use as if it were enclosed by a newly-created global object.

The new object's prototype is Function.prototype; JS_NewObject: Choosing a Default Prototype explains exactly how this is computed. JS_CloneFunctionObject takes care to choose a prototype that shares a global object with the given parent whenever possible.

funobj must be a pointer to a JavaScript function object (see JS_ObjectIsFunction).

On success, JS_CloneFunctionObject returns a pointer to the newly created object. If the class of funobj is not Function, then JS_CloneFunctionObject returns funobj itself. On failure, it returns NULL.

MXR ID Search for JS_CloneFunctionObject

Document Tags and Contributors

Contributors to this page: Brendan, MMondor, Jimb, Dria, Jorend
最終更新者: Jorend,