私はアンドロイドでjavascriptを実行しようとしていて、RhinoとDuktapeがWebViewなしで実行する機能を提供しています。 しかし、私のjs関数に引数として可変数のキーと値のペアを渡す明確な方法はないようです。いずれかの回避策はありアンドロイドでjavascriptを実行し、引数としてマップに渡す方法
{"device":"android", "version":"4.4", "country":"US",...}
とJS側が
function calculate(param) {
var country = 'country';
var device = 'device';
if (country in param && param[country]=='US') {
return "a";
};
if (device in param && param[device]=="android") {
return "b";
} else {
return "c";
}
}
次のようになります。 引数は、ように見えるのでしょうか?
あのように、呼び出したメソッドとparamsを直接評価文字列に入れます。それはスマートですが、同じメソッドで複数回実行する場合はパフォーマンス上の問題はありません。 –
@arthur li:元の問題に近づいていると思います。 param引数をオブジェクトではなくJSON文字列として渡そうとした可能性はありますか? – flyingfridge