簡體   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