// CPP中实现的给JS调用的函数声明
jsValue JS_CALL js_msgBox(jsExecState es);
// 绑定函数
jsBindFunction("msgBox", js_msgBox, 1);
// CPP中实现留给Js调用的接口
jsValue JS_CALL js_msgBox(jsExecState es)
{
jsValue jv = jsEmptyObject(es);
jsValue jOv1 = jsInt(12);
jsValue jOv2 = jsInt(2);
jsSet(es, jv, "name", jOv1);
jsSet(es, jv, "age", jOv2);
return jv;
}
// HTML中调用CPP中实现的函数
<script type="text/javascript">
function CallCPlusPlus() {
var obj = msgBox("");
var name = obj.name;
alert(name);
var age = obj.age;
alert(age);
}
</script>
// CPP中实现留给Js调用的接口
jsValue JS_CALL js_msgBox(jsExecState es)
{
jsValue jsv = jsArg(es, 0);
jsSetAt(es, jsv, 0, jsInt(0));
jsSetAt(es, jsv, 1, jsInt(1));
return jsInt(1);
}
// HTML中调用CPP实现的函数
<script type="text/javascript">
function CallCPlusPlus() {
var arrayObj = new Array(); //创建一个数组
msgBox(arrayObj);
alert(arrayObj.length);
alert(arrayObj[0]);
alert(arrayObj[1]);
</script>