2010年5月17日月曜日

WSH(JScript)でDictionaryを使ってみる

今日はWSH(JScript)のDictionaryを紹介します。
  1. var datas = {  
  2.     a:"aa",  
  3.     b:"bb",  
  4.     c:"cc"  
  5. };  
  6.   
  7. //  辞書(Dictionary)の生成  
  8. var objDict = WScript.createObject("Scripting.Dictionary");  
  9. for (var key in datas) {  
  10.     //  要素の追加  
  11.     objDict.add(key, datas[key]);  
  12. }  
  13.   
  14. //--------------------------------------  
  15. //  プロパティ  
  16. //--------------------------------------  
  17. //  要素数の取得  
  18. var cnt = objDict.Count;  
  19. WScript.echo("要素数の取得:" + cnt);  
  20.   
  21. //  要素の取得  
  22. WScript.echo("要素の取得1:" + objDict.Item("a"));  
  23. WScript.echo("要素の取得2:" + objDict("a"));  
  24.   
  25. //  キーを変更する  
  26. objDict.Key("a") = "A";  
  27. WScript.echo("\"A\"の値:" + objDict.Item("A"));  
  28.   
  29. //--------------------------------------  
  30. //  メソッド  
  31. //--------------------------------------  
  32.   
  33. //  キーの存在判定  
  34. if (objDict.Exists("A")) {  
  35.     WScript.echo("\"A\"は存在します");  
  36. }  
  37.   
  38. //  Enumeratorを使用した反復  
  39. var enuDict = new Enumerator(objDict);  
  40. var strItems = "";  
  41. for (; enuDict.atEnd() == false; enuDict.moveNext()) {  
  42.     strItems += objDict(enuDict.item()) + ",";  
  43. }  
  44. WScript.echo(strItems);  
  45.   
  46.   
  47.   
  48. //  キーを指定して削除  
  49. objDict.Remove("b");  
  50. objDict.RemoveAll();  
  51. WScript.echo("要素数:" + objDict.Count);  
紹介しておいてなんですが、機能が微妙な上にJScript(JavaScript)は連装配列が使えるのでDictionaryは使わないかもしれません。

0 件のコメント:

コメントを投稿