我对JS字典的简单学习

发布时间:2019-08-20 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了我对JS字典的简单学习脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

我对JS字典的简单学习

字典的概念

集合、字典和散列表都可以来存储不重复的值。
在集合中我们使用[值,值]来保存,在字典和散列表中使用[键,值]来存储数据。

字典也被称为映射

ES6中有集合Set类的实现,也有字典Map类的实现。

function  @H_406_27@Dictionary() {
  VAR ITems = {};
}

相关操作方法

实现has(key)方法,判断某个键值是否在这个字典中,有则返回true

this.has = function(key) {
  return key in items;
}

现Set(key, value)方法,向字典中添加新元素。

this.set = function(key, value) {
  items[key] = value;
}

实现remove(key)方法,从字典中移除键值对应的数据值。

this.remove = function(key) {
  if(this.has(key)) {
    delete items[key];
    return true;
  }
  return false;
}

实现get(key)方法,查找特定的值。

this.get = function(key) {
  return this.has(key) ? items[key] : undefined;
}

引申:undefinednull不一样,null表示变量没有值,undefined表示变量被声明但未赋值。

实现values()方法,将字典所有的值以数组的形式返回。

this.values = function() {
  var values = [];
  for(var k in items) {
    if(this.hasOwnPRoPErty(k)) {
      values.push(items[key]);
    }
  }
  return values;
}

clear(),size(),keys()方法与Set类一致,这里不讨论了。

实现getItems()方法

this.getItems = function() {
  return items;
}

使用Dictionary类

创建一个类的实例,然后给它添加三条子邮件地址。

var dictionary = new Dictionary();
dictionary.set('Gandalf', 'gandalf@email.COM');
dictionary.set('John', 'John@email.com');
dictionary.set('Tyrion', 'Tyrion@email.com');

使用方法

console.LOG(dictionary.has('Gandalf')); //true
console.log(dictionary.size()); //3
console.log(dictionary.keys()); //['Gandalf', 'John', 'Tyrion'];
console.log(dictionary.values()); //['Gandalf@email.com', John@email.com', 'Tyrion@email.com']
console.log(dictionary.get('Tyrion')); //Tyrion@email.com

执行以下代码

dictionary.remove('John');

console.log(dictionary.keys()); //['Gandalf', 'Tyrion']
console.log(dictionary.values()); //['Gandalf@email.com', 'Tyrion@email.com']
console.log(dictionary.getItems()); //{Gandalf: 'Gandalf@email.com', Tyrion: 'Tyrion@email.com'}

脚本宝典总结

以上是脚本宝典为你收集整理的我对JS字典的简单学习全部内容,希望文章能够帮你解决我对JS字典的简单学习所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。