繁体   English   中英

数组作为函数参数

[英]array as function param

我有Flash应用程序,该应用程序创建数组并调用javascript函数。

var jsParams = ["3011","3012","3013","3014","3015"];
ExternalInterface.call("doCall", jsParams);

这是我的javascript函数:

function doCall(params) {
  console.log(params);
  console.log(params[0]);
}

萤火虫的输出为:

["3011","3012","3013","3014","3015"]
[

但是对于第二行,我期望3011而不是[。 然后我试图从萤火虫中调用具有相同参数的相同函数,并输出以下函数:

doCall(["3011","3012","3013","3014","3015"]);
["3011","3012","3013","3014","3015"]
3011

我的问题是如何将参数从动作脚本传递给javascript,而不是作为字符串值。

谢谢。

看起来params变量是作为字符串而不是数组传递的。

如果将方括号符号应用于字符串,则表示所提供索引处的字符,在这种情况下,该字符将为“ [”(位置0)。

您应该研究JSON解码,以找到将字符串转换回数组的安全方法,我不建议eval ,并且不广泛支持JSON.decode

您是否尝试过将数组封装在另一个数组中?

ExternalInterface.call(“ doCall”,[jsParams]);

我认为初始数组是这样,您可以传递多个参数集

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM