android、 java调用js函数,传人变量类型问题
2017-09-22 本文已影响39人
alphet
在java里面用 log记录到的结果
例如下面的 js 函数3个变量,id,type,position
function testItem(id, type, position) {
window.mItemJS.itemClick(id, type, position);
}
java 调用 testItem() 函数
第一种情况:
String str=其他+"onclick='testItem("+1000+",baba,"+2000+")'>";
log得到的数据;1000,undefined,2000
1000 与2000 传递过来都是正常的,但是 baba 却没有传递,而且提示“undefined”
第二种情况:
String str=其他+"onclick='testItem("+1000+",\"baba\","+2000+")'>";
log得到的数据;1000,baba,2000 都是正常的
结论: 当java传递参数执行js函数的时候,纯数字形变量(整形或者“1234”)不需要转义,而其他类型则需要添加表示类型的符号,比如字符型需要通过引号来表明它真的是字符型变量