C++ ¸Ê ó·³ »ç¿ëÇÏ´Â Dictionary ÇÔ¼öÀÌ´Ù. Dictionary¸¦ ±¸ÇöÇÏ°í ³ª¼¾ß ¾Ë¾ÒÁö¸¸ ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼´Â MapÀ» Á¦°øÇÏ°í ÀÖ´Ù. DictionaryÀÇ »ç¿ë ¹æ¹ýÀº Map°ú ¶È°°´Ù. °øºÎ Â÷¿ø¿¡¼ ¸¶¹«¸® ÇÑ´Ù. Dictionary »ç¿ë¹ý var pbook = new Dictionary();
pbook.set("Raymond","123"); pbook.set("David", "345"); pbook.set("Cynthia", "456"); pbook.set("Mike", "723"); pbook.set("Jennifer", "987"); pbook.set("Danny", "012"); pbook.set("Jonathan", "666"); pbook.delete("David"); Map »ç¿ë¹ý1 Map.prototype.showAll = function() {
for (var [key, value] of this) { console.log(key + " = " + value); } } var pbook = new Map(); pbook.set("Raymond","123"); pbook.set("David", "345"); pbook.set("Cynthia", "456"); pbook.set("Mike", "723"); pbook.set("Jennifer", "987"); pbook.set("Danny", "012"); pbook.set("Jonathan", "666"); pbook.delete("David"); pbook.showAll(); Map »ç¿ë¹ý2 function AddStudent(data) {
for(var n = 0; n < 5; ++n) { var obj = {}; obj.number = n; obj.name = "David" + String(n); if(n<=3) obj.gender = "man"; else obj.gender = "woman"; data.set(n, obj); } } var student = new Map(); AddStudent(student); for (var [key, value] of student) { console.log(key + " = " + value.name); } dictionary.js function Dictionary() {
this.set = set; this.datastore = new Array(); this.find = find; this.delete = remove; this.showAll = showAll; this.count = count; this.clear = clear; } function set(key, value) { this.datastore[key] = value; } function find(key) { return this.datastore[key]; } function remove(key) { delete this.datastore[key]; } function showAll() { var arr = Object.keys(this.datastore).sort(); for (n in arr) { console.log(arr[n] + " -> " + this.datastore[arr[n]]); } /* Object.keys(this.datastore).sort().forEach(function(key) { console.log(key + " -> " + this.datastore[key]); }, this); */ } function count() { return Object.keys(this.datastore).length; /* var n = 0; for(var key in Object.keys(this.datastore)) { ++n; } return n; */ } function clear() { var arr = Object.keys(this.datastore).sort(); for(var n in arr) { delete this.datastore[arr[n]]; } } array¸¦ »ç¿ëÇÒ¶§ key¸¦ integer ´ë½Å ¹®ÀÚ¿À» »ç¿ëÇÒ¼ö ÀÖ´Ù. ¹®ÀÚ¿À» »ç¿ëÇÏ°Ô µÇ¸é array°¡ ¾Æ´Ï¶ó °´Ã¼ ÇÁ·ÎÆÛƼ¶ó´Â°ÍÀ» ¸í½ÉÇØ¾ß ÇÑ´Ù. Áï, array2["my"]´Â array2.my¿Í °°Àº ±â´ÉÀ» ÇÑ´Ù. ±×·¡¼, arrayÀÇ lengthµµ Áõ°¡ÇÏÁö ¾Ê´Â´Ù. Object.keys¸¦ ÀÌ¿ëÇؼ ³ëµå °¹¼ö¸¦ ±¸ÇØ¾ß ÇÑ´Ù. Âü°í) Map »ç¿ë¹ý https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Map ÀÚ¹Ù½ºÅ©¸³Æ® ÀڷᱸÁ¶¿Í ¾Ë°í¸®Áò Ã¥ ¼Ò½º https://github.com/oreillymedia/data_structures_and_algorithms_using_javascript |