Javascript中陣列與字典(即map)的使用(備忘)
阿新 • • 發佈:2019-02-09
簡述:
簡單記錄一下資料結構Map和陣列,
其實在Javascript這種弱型別的指令碼語言中,陣列同時也就是字典,下面主要就是字典陣列的簡易使用
程式碼:
1. 陣列中新增map
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Test</title> <script type="text/javascript"> var arr = []; var key = 'Jeremy'; var value = '!!!!' arr.push({ 'key': key, 'value': value, }); document.write("key: " + arr[0]['key'] + "<br/>value: " + arr[0]['value']); </script> </head> <body> </body> </html>
輸出0:
2. 陣列遍歷輸出
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Test</title> </head> <body> <script type="text/javascript"> var arr = []; arr.push("Jeremy"); arr.push("Jimmy"); for(var i in arr) document.write(i + ": " + arr[i] + "</br>"); </script> </body> </html>
輸出1:
3. 類似字典(map)遍歷
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Test</title> </head> <body> <script type="text/javascript"> var dict = []; //or dict = new Array() dict["Jeremy"] = 20; dict["Jimmy"] = 30; for(var key in dict) document.write(key + ": " + dict[key] + "</br>"); </script> </body> </html>
輸出2:
4. 字典宣告時賦值
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Test</title>
</head>
<body>
<script type="text/javascript">
var dict = {
"Jeremy" : 20,
"Jimmy" : 30
};
for(var key in dict)
document.write(key + ": " + dict[key] + "</br>");
</script>
</body>
</html>
輸出3:
5.字典中巢狀陣列
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Test</title>
</head>
<body>
<script type="text/javascript">
var dict = {
"Jeremy" : ["Chinese", "Math"] ,
"Jimmy" : ["Art", "English"]
};
var name = "Jeremy";
for(var courseIndex in dict[name])
document.write(dict[name][courseIndex] + "</br>");
</script>
</body>
</html>
輸:4:
6. 字典裡value為陣列, 陣列內為字典,
下面的邏輯就是學生 : 課程列表 : 某門的課程資訊
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Test</title>
</head>
<body>
<script type="text/javascript">
var dict = [];
var courseListOfJeremy = [
{"Chinese" : 3},
{"Math": 5}
];
dict['Jeremy'] = courseListOfJeremy;
var courseListOfJimmy = [
{"Art": 3},
{"English": 5}
];
dict['Jimmy'] = courseListOfJimmy;
document.write("Jimmy's Course Number Of Chinese: " + dict['Jeremy'][0]['Chinese']);
</script>
</body>
</html>
輸出5: