This translation is incomplete. Please help translate this article from English

This article covers features introduced in SpiderMonkey 38



JS::OrdinaryToPrimitive(JSContext *cx, JS::HandleObject obj, JSType type,
                        JS::MutableHandleValue vp);
名称 类型 描述
cx JSContext * 执行转换的上下文. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext.
obj JS::HandleObject 要转换的对象。
type JSType 转换后值的类型。
vp JS::MutableHandleValue 输出参数. 成功, *vp 收到转换后的值


JS::OrdinaryToPrimitive 通过ES6 draft rev 28(2014年10月14日)7.1.1第二算法中指定的算法将JavaScript对象转换为指定的类型值。

Most users should not call this -- use JS::ToNumber, JS::ToBoolean, or JS::ToString instead. This should only be called from custom convert hooks. It implements the default conversion behavior shared by most objects in JS, so it's useful as a fallback.

On success, JS::OrdinaryToPrimitive stores the converted value in *vp and returns true. On error or exception, it returns false, and the value left in *vp is undefined.