温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

自定义页面hashmap 方便调用

发布时间:2020-08-28 14:57:09 阅读:547 作者:阿山哥258 栏目:web开发
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

因为页面一些功能问题,经常要用到类似于map的集合,存取数据。所以就定义一个方便使用

新建一个js文件,把如下代码copy到文件中:

function HashMap() {

/** Map 大小 * */

var size = 0;

/** 对象 * */

var entry = new Object();

/** 存 * */

this.put = function(key, value) {

if (!this.containsKey(key)) {

size++;

}

entry[key] = value;

}

/** 取 * */

this.get = function(key) {

return this.containsKey(key) ? entry[key] : null;

}

/** 删除 * */

this.remove = function(key) {

if (this.containsKey(key) && (delete entry[key])) {

size--;

}

}

/** 是否包含 Key * */

this.containsKey = function(key) {

return (key in entry);

}

/** 是否包含 Value * */

this.containsValue = function(value) {

for ( var prop in entry) {

if (entry[prop] == value) {

return true;

}

}

return false;

}

/** 所有 Value * */

this.values = function() {

var values = new Array();

for ( var prop in entry) {

values.push(entry[prop]);

}

return values;

}

/** 所有 Key * */

this.keys = function() {

var keys = new Array();

for ( var prop in entry) {

keys.push(prop);

}

return keys;

}

/** Map Size * */

this.size = function() {

return size;

}

/* 清空 */

this.clear = function() {

size = 0;

entry = new Object();

}

}

//自定义对象

function MyObject(name)

{

    this.name = name;

    this.toString = function ()

    {

        return this.name;

    }

}

用法如下:

实例对象

 var map = new HashMap();

存:key value键值对

map.put($(this).text(),$(this).val());

取:

var getValue=map.get(key);

取长度:map.size();

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×