js中数据结构
js中原生自带的数据结构比较简单,主要有数组Array、映射Map、集合Set。我们可以根据这三个基本数据结构实现我们其他想要的数据结构类型。
数组Array
js中的数组不区分元素类型,数组的使用在可以参考
映射Map
var map = new Map(); //映射,不重复的键,以键值对的形式存在map.set("name","mapluanpeng"); //添加设置映射if(map.has("name")) //判断映射是否存在 printf(map.get("name")); //读取映射map.delete("name"); //删除映射
合Set
var set1 = new Set(["name1","name2","name3"]); //集合。不重复的元素集合,不存在键值对set1.add("name"); //添加集合if(set1.has("name")){ //检测集合是否存在指定元素 set1.delete("name"); //删除集合元素 set1.clear(); //清空集合元素 console.log(set1.size); //集合大小}set1 = new Set(["name1","name2","name3"]);var set2 = new Set(["name1","name3","name5"]);//并集let union = new Set([...set1, ...set2]);//交集let intersect = new Set([...set1].filter( x => set2.has(x)));//差集let difference = new Set([...set1].filter(x => !set2.has(x)));
对象
对象本身也可以作为一种数据结构,通过设置属性和属性的值来存储数据。对象的内容可以参考JSON
json是一种字符串数据格式,由于经常与对象变量转换,进行前后台的数据交互,这里了解一下。JSON字符串:var str1 = '{ "name": "cxh", "sex": "man" }';JSON对象:var str2 = { "name": "cxh", "sex": "man" };var obj = JSON.parse(str); //由JSON字符串转换为JSON对象Alert(obj.name); //读取对象属性var last=JSON.stringify(obj); //将JSON对象转化为JSON字符alert(last);