kd.bos.script.jsengine.mate

## 类 KWrapFactory

- java.lang.Object
- - org.mozilla.javascript.WrapFactory
  - - kd.bos.script.jsengine.mate.KWrapFactory

-     public class KWrapFactory
      extends org.mozilla.javascript.WrapFactory

- - ### 字段概要

    字段
    限定符和类型 | 字段和说明
    --- | ---
    `static KWrapFactory` | `INSTANCE`

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `java.lang.Object` | `wrap(Context cx, org.mozilla.javascript.Scriptable scope, java.lang.Object javaObject, java.lang.Class<?> staticType)` java object -->js, 用java描述的 "js object" or Scriptable、undifined、null 返回以下6中类型值 java.lang.Boolean java.lang.String java.lang.Number org.mozilla.javascript.Scriptable objects The value returned by Context.getUndefinedValue() null 内可能转调->wrapAsJavaObject
    `org.mozilla.javascript.Scriptable` | `wrapAsJavaObject(Context cx, org.mozilla.javascript.Scriptable scope, java.lang.Object javaObject, java.lang.Class<?> staticType)` 【转换】 java object --> 用java描述的 js object (NativeJavaObject->Scriptable)
    `org.mozilla.javascript.Scriptable` | `wrapJavaClass(Context cx, org.mozilla.javascript.Scriptable scope, java.lang.Class<?> javaClass)` 【转换】 封装java类，一次性，作为prototype。
    `org.mozilla.javascript.Scriptable` | `wrapNewObject(Context cx, org.mozilla.javascript.Scriptable scope, java.lang.Object obj)` 转调->wrapAsJavaObject new 创建js对象(java描述的js object)时调用 TODO 在此"原生级"限制拦截类，进行方法、属性调用限制。

    - ### 从类继承的方法 org.mozilla.javascript.WrapFactory

      `isJavaPrimitiveWrap, setJavaPrimitiveWrap`

    - ### 从类继承的方法 java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 字段详细资料

    - #### INSTANCE

          public static final KWrapFactory INSTANCE

  - ### 方法详细资料

    - #### wrap

          public java.lang.Object wrap(Context cx,
                                       org.mozilla.javascript.Scriptable scope,
                                       java.lang.Object javaObject,
                                       java.lang.Class<?> staticType)

      java object -->js, 用java描述的 "js object" or Scriptable、undifined、null

      返回以下6中类型值

      - java.lang.Boolean
      - java.lang.String
      - java.lang.Number
      - org.mozilla.javascript.Scriptable objects
      - The value returned by Context.getUndefinedValue()
      - null
      内可能转调->wrapAsJavaObject
      覆盖:
        `wrap` 在类中 `org.mozilla.javascript.WrapFactory`
      另请参阅:
        `反向转换js-->java：Context#jsToJava，转换为目标类。`

    - #### wrapAsJavaObject

          public org.mozilla.javascript.Scriptable wrapAsJavaObject(Context cx,
                                                                    org.mozilla.javascript.Scriptable scope,
                                                                    java.lang.Object javaObject,
                                                                    java.lang.Class<?> staticType)

      【转换】 java object --> 用java描述的 js object (NativeJavaObject->Scriptable)
      覆盖:
        `wrapAsJavaObject` 在类中 `org.mozilla.javascript.WrapFactory`

    - #### wrapJavaClass

          public org.mozilla.javascript.Scriptable wrapJavaClass(Context cx,
                                                                 org.mozilla.javascript.Scriptable scope,
                                                                 java.lang.Class<?> javaClass)

      【转换】 封装java类，一次性，作为prototype。(用java描述的js类) TODO 在此限制类加载。
      覆盖:
        `wrapJavaClass` 在类中 `org.mozilla.javascript.WrapFactory`

    - #### wrapNewObject

          public org.mozilla.javascript.Scriptable wrapNewObject(Context cx,
                                                                 org.mozilla.javascript.Scriptable scope,
                                                                 java.lang.Object obj)

      转调->wrapAsJavaObject new 创建js对象(java描述的js object)时调用 TODO 在此"原生级"限制拦截类，进行方法、属性调用限制。
      覆盖:
        `wrapNewObject` 在类中 `org.mozilla.javascript.WrapFactory`