数据结构--字典
数据结构 -- 字典
2023-09-27 14:26:50 时间
- 微信扫码关注公众号 :前端前端大前端,追求更精致的阅读体验 ,一起来学习啊
- 关注后发送关键资料,免费获取一整套前端系统学习资料和老男孩python系列课程
const { log } = console;
function Map() {
let obj = {};
//向字典中添加或更新元素。
this.set = (key, value) => {
obj[key] = value;
}
//通过使用键值来从字典中移除键值对应的数据值。
this.remove = key => {
if (this.has(key)) {
delete obj[key];
return true;
}
return false;
}
//如果某个键值存在于这个字典中,则返回 true ,反之则返回 false
this.has = key => {
return key in obj;
}
//通过键值查找特定的数值并返回。
this.get = key => {
return obj[key]
}
//将这个字典中的所有元素全部删除。
this.clear = () => {
obj = {};
}
//返回字典所包含元素的数量。与数组的 length 属性类似。
this.size = () => {
return Object.keys(obj).length
}
//将字典所包含的所有键名以数组形式返回。
this.keys = () => {
return Object.keys(obj)
}
//将字典所包含的所有数值以数组形式返回。
this.values = () => {
return this.keys().map(item => {
return obj[item]
})
}
//打印当前对象
this.print = () => {
log(obj) ;
}
}
let map = new Map();
map.set('name', 'tom');
map.set('age', 18);
map.set('language', 'js');
map.print();//{ name: 'tom', age: 18, language: 'js' }
log(map.get('name'))//tom
log(map.remove('name'))//true
log(map.has('name'))//fasle
log(map.values())// [18,'js']
log(map.keys())//[age,language]
log(map.size())//2
相关文章
- 【数据结构】数据结构知识思维导图
- 数据结构 -- 队列 & 循环队列 -- 数组实现
- 非线性数据结构--图
- 程序猿修仙之路--数据结构之你是否真的懂数组? c#socket TCP同步网络通信 用lambda表达式树替代反射 ASP.NET MVC如何做一个简单的非法登录拦截
- 数据结构 -- 链表
- 经典数据结构与算法面试题总结--持续更新中...
- 数据结构--Heap介绍及Java代码的实现示例
- Java数据结构之链表及其常见算法
- 【数据结构】线性表与顺序表
- swift的enum模式—对Alamofire入口的解析--数据结构与操作结合的模式
- LeetCode数据结构_C语言题解系列-链表II
- 浅析Java数据结构:稀疏数组的介绍和使用场景
- 【数据结构】双向链表的C语言实现--万字详解介绍
- 【数据结构/二叉树/二叉树的修改与构造】题解+详细备注(共5题)
- 数据结构-链表带环问题 #经典题#
- Python数据结构与算法(1)--Python基础
- Python数据结构与算法(5)--搜索和排序
- 符合混合数据结构的数据湖
- 并发编程 — 并发数据结构--转载
- MySQL索引背后的数据结构及算法原理--转
- Python蓝桥杯训练:基本数据结构 [二叉树] 中
- 26数据结构与算法分析之---线索二叉树
- 11数据结构与算法分析之---栈的定义
- 哈夫曼树编码以及构造--数据结构实验三