我想用php代码将变量(dict)传递给服务器。变量是字典中的字典和字典内的字典。
在Swift和Java中,我可以这样编写
斯威夫特:var pageDict = [String: [String: [String: Int]]]()
Java:Map<String, Map<String, Map<String, Integer>>> pageDict = new HashMap<>();
修改
如果我在Javascript [[[]]]
中初始化类似这样的字典,我会收到此错误
<b>Warning</b>: array_keys() expects parameter 1 to be array, null given in <b>test.php</b> on line <b>166</b><br />
<br />
<b>Warning</b>: in_array() expects parameter 2 to be array, null given in <b>test.php</b> on line <b>166</b><br />
<br />
第166行(服务器代码)
line165 function getExistData($pageDict, $location) {
line166 return in_array($location, array_keys($pageDict)) ? $pageDict[$location] : array();
line167 }
如果我尝试这样做,var pageDict = {"____": {"____": {"____": 1}}};
一切都运作良好。但这绝对不是一个完美的方法
想知道如何在Javascript中完成它?
答案 0 :(得分:0)
您可以使用以下结构存储3级多图。
var mapLevel1 = new Object(); // innermost map
mapLevel1[String1] = Int1;
mapLevel1[String2] = Int2;
var mapLevel2 = new Object();
mapLevel2[String3] = map1;
var mapLevel3 = new Object(); //outermost map
mapLevel3[String3] = map2;
编辑:根据@CertainPerformance的建议,在将数据传递给服务器之前,使用JSON.stringify
转换为字符串。