كتبت خريطة في JS مع وظيفة اجتياز ، يرجى التعليق.
//map.js
Array.Prototype.Remove = function (s) {for (var i = 0 ؛ i <this.length ؛ i ++) {if (s == this [i]) this.splice (i ، 1) ؛ }} /** * خريطة بسيطة * * * var m = new map () ؛ * m.put ('Key' ، 'Value') ؛ * ... * var s = "" ؛ * M.Each (الدالة (المفتاح ، القيمة ، الفهرس) { * s+= index+":"+key+"="+value+"/n" ؛ *}) ؛ * تنبيه (ق) ؛ * * Author deWitt * date 2008-05-24 */function map () {/** array لتخزين المفاتيح (المستخدمة للتجاوز) */this.keys = new array () ؛ / ** تخزين البيانات*/ this.data = كائن جديد () ؛ / ** * ضع زوجًا قيمة مفتاح * param {string} مفتاح * param {object} value */ this.put = function (key ، value) {if (this.data [key] == null) {this.keys.push (key) ؛ } this.data [key] = value ؛ } ؛ / ** * احصل على القيمة المقابلة لمفتاح * param {string} مفتاح * regurn {object} value */ this.get = function (key) {return this.data [key] ؛ } ؛ / *** حذف زوج القيمة المفاتيح* param {string} مفتاح*/ this.remove = function (key) {this.keys.remove (key) ؛ this.data [key] = null ؛ } ؛ / ** * اجتياز الخريطة وتنفيذ وظيفة المعالجة * * param {function} وظيفة رد الاتصال (المفتاح ، القيمة ، الفهرس) {..} */ this.each = function (fn) {if (typeof fn! = 'function') {return ؛ } var len = this.keys.length ؛ لـ (var i = 0 ؛ i <len ؛ i ++) {var k = this.keys [i] ؛ fn (k ، this.data [k] ، i) ؛ }} ؛ / *** احصل على صفيف قيمة المفاتيح (على غرار إدخال java ())* RETURN من كائن قيمة المفاتيح {KEY ، value}*/ this.entrys = function () {var len = this.keys.length ؛ إدخال var = صفيف جديد (len) ؛ لـ (var i = 0 ؛ i <len ؛ i ++) {intrads [i] = {key: this.keys [i] ، value: this.data [i]} ؛ } إدخال إدخال ؛ } ؛ / *** حدد ما إذا كانت الخريطة فارغة*/ this.isempty = function () {return this.keys.length == 0 ؛ } ؛ / *** احصل على عدد أزواج القيمة الرئيسية*/ this.size = function () {return this.keys.length ؛ } ؛ / ** * إعادة كتابة toString */ this.toString = function () {var s = "{" ؛ لـ (var i = 0 ؛ i <this.keys.length ؛ i ++ ، s+= '،') {var k = this.keys [i] ؛ s+= k+"="+this.data [k] ؛ } s+= "}" ؛ العودة s ؛ } ؛ } وظيفة testMap () {var m = new map () ؛ m.put ('key1' ، 'comtop') ؛ M.Put ('Key2' ، 'Southern Power Grid') ؛ M.Put ('Key3' ، 'Jingxin Garden') ؛ تنبيه ("init:"+m) ؛ M.Put ('key1' ، 'Kantop') ؛ تنبيه ("SET KEY1:"+M) ؛ M.Remove ("key2") ؛ تنبيه ("إزالة المفتاح 2:"+م) ؛ var s = "" ؛ M.Each (وظيفة (مفتاح ، القيمة ، الفهرس) {s+= index+":"+key+"="+value+"/n" ؛}) ؛ التنبيه (s) ؛ } //testmap.htm؟ <html> <head> <title> اختبار خريطة الاختبار </title> <script language = "javaScript" src = "map.js"> </script> </head> <body> <input type = "button" value = "test" onclick = "testmap ()"المقالة أعلاه عبارة عن مثال بسيط من خريطة JavaScript (المشاركة) وهو كل المحتوى الذي أشاركه معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.