[英]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.