java.lang.Object
netscape.javascript.JSObject
允许Java代码操作JavaScript对象。
当将JavaScript对象传递或返回给Java代码时,它会被包装在JSObject
的实例中。当将JSObject
实例传递给JavaScript引擎时,它会被解包回其原始的JavaScript对象。JSObject
类提供了一种调用JavaScript方法和检查JavaScript属性的方式。
从JavaScript引擎返回到Java的任何数据都会转换为Java数据类型。将某些数据传递给JavaScript引擎会转换为JavaScript数据类型。
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionabstract Object
调用JavaScript方法。abstract Object
评估JavaScript表达式。abstract Object
检索JavaScript对象的命名成员。abstract Object
getSlot
(int index) 检索JavaScript对象的索引成员。abstract void
removeMember
(String name) 删除JavaScript对象的命名成员。abstract void
设置JavaScript对象的命名成员。abstract void
设置JavaScript对象的索引成员。
-
Constructor Details
-
JSObject
protected JSObject()构造一个新的JSObject。用户既不应调用此方法,也不应对JSObject进行子类化。
-
-
Method Details
-
call
调用JavaScript方法。相当于JavaScript中的"this.methodName(args[0], args[1], ...)"。- 参数:
-
methodName
- 要调用的JavaScript方法的名称。 -
args
- 作为参数传递给方法的Java对象。 - 返回:
- 方法的结果。
- 抛出:
-
JSException
- 当浏览器或JavaScript引擎报告错误时。
-
eval
评估JavaScript表达式。表达式是将在“this”给定的上下文中评估的JavaScript源代码字符串。- 参数:
-
s
- JavaScript表达式。 - 返回:
- JavaScript评估的结果。
- 抛出:
-
JSException
- 当浏览器或JavaScript引擎报告错误时。
-
getMember
检索JavaScript对象的命名成员。相当于JavaScript中的"this.name"。- 参数:
-
name
- 要访问的JavaScript属性的名称。 - 返回:
- 属性的值。
- 抛出:
-
JSException
- 当浏览器或JavaScript引擎报告错误时。
-
setMember
设置JavaScript对象的命名成员。相当于JavaScript中的"this.name = value"。- 参数:
-
name
- 要访问的JavaScript属性的名称。 -
value
- 属性的值。 - 抛出:
-
JSException
- 当浏览器或JavaScript引擎报告错误时。
-
removeMember
删除JavaScript对象的命名成员。相当于JavaScript中的"delete this.name"。- 参数:
-
name
- 要移除的JavaScript属性的名称。 - 抛出:
-
JSException
- 当浏览器或JavaScript引擎报告错误时。
-
getSlot
检索JavaScript对象的索引成员。相当于JavaScript中的"this[index]"。- 参数:
-
index
- 要访问的数组的索引。 - 返回:
- 索引成员的值。
- 抛出:
-
JSException
- 当浏览器或JavaScript引擎报告错误时。
-
setSlot
设置JavaScript对象的索引成员。相当于JavaScript中的"this[index] = value"。- 参数:
-
index
- 要访问的数组的索引。 -
value
- 要设置的值。 - 抛出:
-
JSException
- 当浏览器或JavaScript引擎报告错误时。
-